HWND Funktionen in CWND verwenden ?



  • Hallo,

    ich möchte die Funktion BOOL SetForegroundWindow(HWND hWnd) in meinem MFC
    Dialog verwenden. Dort ist aber kein Bezug zu HWND mehr vorhanden und es
    wird nur der CWND SetForegroundWindow() akzeptiert, der ja nun mal keinen
    Parameter mehr hat. Dumm nur, das ich in diesem Parameter ein anderes
    Fenster angeben wollte, als das aktuelle.
    Wie rufe ich nun den SetForegroundWindow von HWND auf ?

    mfg
    thenoname



  • ::SetForegroundWindow(...)



  • hmmm,

    also das mit :: scheint zu klappen, jedoch sagt mir der Compiler,
    das es bei HWND__ kein SetForegroundWindow gibt, obwohl er es mir
    beim Schreiben sogar vorschlägt ??
    Auch komisch das er meine Versoche mit HWND__::SetForegroundwindow
    nicht axeptiert hat.



  • Ich verstehe überhaupt nicht was du willst.

    entweder

    CWnd window;
    window.Attach(hWnd);
    window.SetForegroundWindow();

    oder

    ::SetForegroundWindow(hWnd);



  • Jep,

    genau das meinte ich.

    Nun habe ich nur noch das Problem, das mir
    SetFokus leider nicht das vorhergehende Fenster mit
    pOldWnd zurückgibt.
    Weiss jemand zufällig warum ?



  • Ich denke mal es liegt daran:

    If the hWnd parameter is invalid or the window is not attached to the calling thread's message queue, the return value is NULL.


Anmelden zum Antworten