SHBrowseForFolder - Refresh
-
Hallo zusammen,
habe eine Standard-Dialogbox die mittels SHBrowseForFolder aufgerufen wird einen neuen Button für Neues Verzeichnis angelegt.
(Vergleiche dazu: http://www.c-plusplus.net/forum/viewtopic.php?t=11690&highlight=shbrowseforfolder)Aber wie kann ich nun nach dem Anlegen die Liste aktualisieren???
MittelsPostMessage (handle, BFFM_SETSELECTION, (LPARAM) true, (LPARAM)(neuVerz.c_str()));
kann ich das Verzeichnis zwar neu auswählen, da es aber (durch das neu anlegen) ja schon gar nicht in der Liste ist, kann es auch nicht markiert werden.
Man müsste ein weiteres "PostMessage" hinzufügen das die Liste (Browse) aktualisiert.Hat jemand eine Idee???
Gruß
RieseXXL
-
Moin!
Kennt sich keiner hier mit "PostMessage" aus?
Gibt es irgendwelche Tabellen der Parameter in PostMessage??
Unter MSDN finde ich nichts brauchbares.Gruß - und Danke!
Riese
-
Das hat wahrscheinlich weniger damit zu tun, das sich keiner mit PostMessage auskennt, als vielmehr damit, das keiner die Nachrichten des Browse for Folder Dialogs kennt.
Postmessage sendet nur eine Nachricht (sprich einen Wert vom Typ UINT) und zwei Parameter an das durch das Handle angegebene Fenster. Welche Nachrichten nun von welchem Fenster wie verarbeitet werden, das ist nicht das "Problem" von PostMessage. Diese Funktion dient lediglich zum versenden von Nachrichten.
Ich hab in Google mal nach der Nachricht die du versendest gesucht (BFFM_SETSELECTION) und bin dabei noch auf ein paar andere Nachrichten gestoßen, die von dem Fenster verarbeitet werden und zwar:
BFFM_SETSTATUSTEXT
BFFM_ENABLEOK
BFFM_SETSELECTION
BFFM_SETSELECTIONW
BFFM_SETSTATUSTEXTWVon diesen Nachrichten sieht allerdings keine so aus, als ob sie dir weiterhelfen könnte. Fürs aktualisieren scheint es keine Standardnachricht zu geben. Da wirst du dir wohl oder übel was anderes überlegen müssen.
-
Danke GeorgeHomes!
Echt nett dass Du Dir die Mühe mit Google gemacht hast.
Wahrscheinlich gibt es wirklich keine Nachricht zum direkten aktualisieren.
Hhhmm. Mal überlegen....Vielleicht fällt jemand was schlaues ein?!!
Gruß
RieseXXL
-
Ist ja kein Problem. Ich habe gesehen, das du den sinn von PostMessage schon etwas fehlinterpretiert hast und wusste das du somit eigentlich überhaupt keine chance mehr hattest, selber darauf zu kommen nach allgemeinen Nachrichten für dein spezielles Fenster zu suchen.
Der heftigste Weg der mir einfällt wäre, wenn ein Verzeichnis erstellt wurde, das Fenster schließen und gleich wieder öffnen. Dann muss er die Liste aktualisieren. Ist halt keine sehr schöne Lösung.
-
Moin!
An das mit dem Fenster schliessen und erneut öffnen habe ich auch schon gedacht. Aber wenn der User das Fenster verschoben hat kommt es nachher an einer anderen Stelle. Das verwirrt ziemlich.
Aber wahrscheinlich werde ich es trotzdem so machen.Gruß
RieseXXL