Freigeben über


IOleInPlaceFrame::SetStatusText-Methode (oleidl.h)

Legt status Text über das direkte Objekt im Rahmenfenster des Containers status Zeile fest und zeigt den Text an.

Syntax

HRESULT SetStatusText(
  [in] LPCOLESTR pszStatusText
);

Parameter

[in] pszStatusText

Die anzuzeigende Meldung.

Rückgabewert

Diese Methode gibt S_OK bei Erfolg zurück. Weitere mögliche Rückgabewerte:

Rückgabecode Beschreibung
S_TRUNCATED
Es wurde Text angezeigt, aber die Nachricht war zu lang und wurde abgeschnitten.
E_FAIL
Fehler beim Vorgang.
E_INVALIDARG
Der angegebene Zeiger ist ungültig.
E_UNEXPECTED
Ein unerwarteter Fehler ist aufgetreten.

Hinweise

Hinweise für Anrufer

Sie sollten IOleInPlaceFrame::SetStatusText aufrufen, wenn Sie den Container auffordern müssen, Objekttext in der status Zeile seines Frames anzuzeigen, sofern er über eine verfügt. Da das Rahmenfenster des Containers die status Zeile besitzt, ist der Aufruf von IOleInPlaceFrame::SetStatusText die einzige Möglichkeit, status Informationen im Rahmenfenster des Containers anzuzeigen. Wenn der Container die Anforderung des Objekts ablehnt, kann die Objektanwendung jedoch den Rahmenbereich aushandeln, um ein eigenes status Fenster anzuzeigen.

Beim Wechseln zwischen Menüs im Besitz des Containers und des direkt aktiven Objekts wird der status Balkentext nicht ordnungsgemäß wiedergegeben, wenn das Objekt die IOleInPlaceFrame::SetStatusText-Methode des Containers nicht aufruft. Wenn der Benutzer beispielsweise während einer direkten Sitzung das Menü Datei auswählen würde, würde die status leiste die Aktion widerspiegeln, die auftreten würde, wenn der Benutzer dieses Menü ausgewählt hat. Wenn der Benutzer dann das Menü Bearbeiten auswählt (das sich im Besitz des direkten Objekts befindet), ändert sich der status Balkentext nur, wenn IOleInPlaceFrame::SetStatusText aufgerufen wird. Dies liegt daran, dass der Container nicht erkennen kann, dass eines der Menüs des Objekts aktiviert wurde, da alle Nachrichten, die der Container abfangen würde, jetzt an das Objekt weitergeleitet werden.

Hinweise für Implementierer

Um potenzielle Probleme zu vermeiden, sollten alle aktivierten Objekte die WM_MENUSELECT Nachricht verarbeiten und IOleInPlaceFrame::SetStatusText aufrufen, auch wenn das Objekt in der Regel keine status Informationen bereitstellt (in diesem Fall kann das Objekt nur eine NULL-Zeichenfolge für den angeforderten status Text übergeben).
Hinweis Führen Sie beim Ausführen von IOleInPlaceFrame::SetStatusText keine Aufrufe an die Funktionen PeekMessage , GetMessage oder ein Dialogfeld aus. Dies kann zu einem Deadlock des Systems führen. Es gibt weitere Einschränkungen, welche OLE-Schnittstellenmethoden und -Funktionen innerhalb von IOleInPlaceUIWindow::GetBorder aufgerufen werden können.
 

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile oleidl.h

Weitere Informationen

GetMessage

IOleInPlaceFrame

PeekMessage