Beyond Compare's Benachrichtigungsleiste rutscht nicht, es öffnet sich nur, so dass ich keine Hilfe anbieten kann. Die Benachrichtigungsleiste selbst ist nur ein TPanel mit einem TImage und TLabel für das Bild/den Text. Es wird zur Entwurfszeit im Hauptfenster platziert und ist so eingestellt, dass es unten ausgerichtet ist. Normalerweise ist es ausgeblendet, und wenn eine Nachricht angezeigt wird, setzen wir die Visible-Eigenschaft auf true.
Es gibt verschiedene Möglichkeiten, die Benachrichtigung zu verbergen, je nachdem, wie sie sich verhalten soll. In BC installieren wir Tastatur- und Maus-Hooks (SetWindowsHookEx mit WH_KEYBOARD oder WH_MOUSE) und verstecken sie bei Tastenereignissen und Maustastenereignissen. Alternativ, wie Mark sagte, könnten Sie es nach einer Verzögerung verstecken, eine Schließen-Schaltfläche an die Seite hinzufügen oder einfach nach bestimmten Ereignissen in Ihrer App Ausschau halten und sie dann manuell ausblenden.
Einen nicht-modalen Dialog zu erstellen ist einfach; Ich bin stattdessen an einer einfachen Möglichkeit interessiert, Benachrichtigungsleisten zu erstellen, die Teil des übergeordneten Fensters sind. –
Hoppla, tut mir leid. Können Sie nicht einfach eine Statusleiste am unteren Rand platzieren und die Texteigenschaft der Statusleiste ändern? Oder ein Paneel, dessen Höhe geändert wurde, um es zu öffnen und nach einiger Zeit wieder auf Null zurückzuschalten? –