Zwischenablage
-
Gibt es eine Nachricht, welche angibt, das etwas in der Zwischenablage liegt?. Ich möchte nämlich, wie man es gewohnt ist, das Menu "Einfügen" nur aktivieren, wenn auch wirklich etwas da ist.
-
Du könntest in deinem UpdateUI-Handler mit GetPriorityClipboardFormat alle Formate prüfen, die du unterstützt.
-
was ist das wo ist? davon habsch ja noch nie gehört.
Gehts ein bissel genauer? Wäre dankbar
-
"UpdateUI-Handler": Guck mal in den Klassenassistenten, da findest du die.
GetPriorityClipboardFormat solltest du in der MSDN finden.
-
also die Get-Methode is in der MSDN ^^ klar
Aber im Klassenassistenten steht dir bei mir nicht.
Wo kann ich das denn am günstigsten abfangen/testen? Hab überlegt das in die OnIdle zu machen, weis aber nicht ob das jetzt evtl übertrieben ist?
-
Pellaeon schrieb:
Aber im Klassenassistenten steht dir bei mir nicht.
Welche Version von Visual C++ hast du?
Wo kann ich das denn am günstigsten abfangen/testen? Hab überlegt das in die OnIdle zu machen, weis aber nicht ob das jetzt evtl übertrieben ist?
Genau dafür gibt es diese UpdateUI-Handler. Das sind Funktionen, die vom MFC-Framework aufgerufen werden, wenn es meint, dass der Status der Befehle (Menüs, Toolbars usw.) aktualisiert werden muss. Du hast darin die Möglichkeit, den Befehl zu aktivieren oder zu deaktivieren. Da diese Dinger vergleichsweise oft aufgerufen werden, solltest du da drin nichts machen, was sehr zeitintensiv ist.
-
habe die 6er-Version.
Wie heißt denn die genaue WM_Message zu dem Handler oder das Makro?
MSDN spuckt mir zu UpdateUI nichts gescheites ausedit: also wenn ich spy ++ benutze udn dann z.B. "Druck" für nen Screenshot drücke kommt da keine Nachricht, zumindest zeigt mir Spy++ keine an
-
Pellaeon schrieb:
habe die 6er-Version.
Da kannst du im Class Wizard einfach statt COMMAND UPDATE_COMMAND_UI auswählen, dann hast du einen UpdateUI-Handler.
-
ah jetzt hab ichs gerafft, stand aufm Schlauch^^, hab jetzt irgendwie in meiner Oberklasse gesucht, dabei muss ich ja nur bei der ID zu dem Menüeintrag nachschauen^^
Danke
-
nochmal zum Clipboard: sehe grad da gibt es sogar was noch passenderes:
IsClipboardFormatAvailable(UINT format)
-
Pellaeon schrieb:
nochmal zum Clipboard: sehe grad da gibt es sogar was noch passenderes:
IsClipboardFormatAvailable(UINT format)Wenn du nur ein Format unterstützt, ja.