none
Anzeige von Custom-Ribbons beim Programmstart

    Frage

  • Hallo zusammen,

    Ich bin neu hier und habe mich schon durch einige Beträge gelesen, konnte aber nichts zu dem Problem finden, was ich nun gerne schildern möchte. Falls ich es dennoch überlesen haben sollte, tut es mir Leid.

    Folgendes Phänomen:

    In der Firma, in der ich arbeite, entwickeln wir unter MS-Access 2013 eine ERP-Software. Wir verwenden eine Custom Ribbon-Bar, die uns noch einige Schwierigkeiten bereitet. Das Problem ist, dass diese Ribbon-Bar in der .accde Datei, also in der kompilierten und ausführbaren Version, beim Programmstart sehr häufig nicht angezeigt werden. Wenn man das Programm jetzt einmal minimiert und dann wieder maximiert, werden diese, so wie sie eigentlich beim Programmstart sein sollten, angezeigt.

    Hat jemand eine Lösung für dieses Problem?

    Viele Grüße

    Pascal Görtz

    Anwendungsentwickler in Ausbildung
    Montag, 2. März 2015 11:01

Alle Antworten

  • Wird euer Custom-Ribbon beim Programstart per Code aktiviert?
    Samstag, 14. März 2015 11:10
    Moderator
  • Die Informationen für die Custom-Ribbon kommen aus einer Tabelle die 'USysRibbon' heißt. Dort sind alle Informationen enthalten. Die Tabelle wird dann automatisch beim Programmstart aufgerufen. 

    In der Tabelle selbst stehen die Informationen als XML-Code.

    Montag, 23. März 2015 08:18
  • Na, ich dachte mehr an (in einem Standardmodul):

    Option Compare Database
    Option Explicit
    
    Private m_Ribbon As IRibbonUI
    
    Public Sub RibbonOnLoad(ARibbon As IRibbonUI)
    
      On Local Error Resume Next
      
      Set m_Ribbon = ARibbon
      
      m_Ribbon.ActivateTab "DeinRibbonName"
         
    End Sub

    und mit onLoad im Ribbon-XML:

    <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"  onLoad="RibbonOnLoad">
    	<ribbon>
    	</ribbon>
    </customUI>


    Montag, 23. März 2015 09:16
    Moderator
  • Sorry, habe da wohl was falsch verstanden.

    Ja, unser Custom-Ribbon wird in dem Fall per Programmcode erstellt. Sowohl in einem Modul, als auch in der Tabelle.

    Montag, 23. März 2015 14:48
  • hmm, und hilft dir mein Code-Schnipsel?

    Montag, 23. März 2015 15:51
    Moderator
  • Naja, leider nicht wirklich.

    Wir generieren unser Custom-Ribbon auf die gleiche Art und Weise. So funktioniert es ja auch, aber wie gesagt wird das Custom-Ribbon beim Programmstart nicht mit 100% Wahrscheinlichkeit angezeigt, sondern verschwindet des öfteren beim Programmstart und kommt wieder, wenn man das Programm einmal minimiert hat und wieder maximiert hat. 

    Freitag, 27. März 2015 11:45
  • Na ja, das kann zweierlei bedeuten:

    1) Access 2013 hat meiner Meinung nach mit einigen Grafikkartentreibern Probleme beim Malen der Inhalte. Kenne ich zwar bisher nur von Formularen, aber vielleicht betriffts auch das Ribbon.

    2) Damit das Ribbon angezeigt werden kann, muss das XML selbst und alle Callbacks fehlerfrei funktionieren. Wenn es einen nicht abgefangen Fehler hat, wird es nicht angzeigt.

    Das Minimiren/Maximiren deutet für mich auf Möglichkeit 1). Hier, falls möglich mal einen anderen Grafikkartentreiber ausprobieren.

    Freitag, 27. März 2015 12:21
    Moderator
  • Wir generieren unser Custom-Ribbon auf die gleiche Art und Weise. So funktioniert es ja auch, aber wie gesagt wird das Custom-Ribbon beim Programmstart nicht mit 100% Wahrscheinlichkeit angezeigt, sondern verschwindet des öfteren beim Programmstart und kommt wieder, wenn man das Programm einmal minimiert hat und wieder maximiert hat. 
    Prüf mal, welches Ribbon der DB und welches dem Startformular zugeordnet ist.
    Freitag, 3. April 2015 18:13
    Moderator
  • Hallo,

    Entschuldigung für meine späte Antwort. Musste mich in der letzten Zeit fürs erste mit einem wichtigerem Thema auseinandersetzen.

    @Stefan Hoffmann: Habe das mit dem Grafikkartentreiber mal angesprochen und ausprobiert. Dies scheint wohl nicht das Problem zu sein, da Sie weiterhin gelegentlich nicht angezeigt werden. 

    @Peter Doering: Habe beides überprüft. Sowohl die Ribbons die dem Startformular zugeordnet sind, als auch die Ribbons die der Datenbank zugeordnet sind, sind identisch.

    Dienstag, 14. April 2015 07:08