GetWindowRect gibt falsche werte ???



  • Ich habe ein Fenster mit der Position 200x200 und der Größe 400x500.
    GetWindowRect liefert mir die korrekte Position aber falsche Werte für die Größe des Fensters.
    Bei 400x500 gibt GetWindowRect mir 600x700.
    Da kann doch was nicht stimmen.
    Ich wollte nur die Position in der Regestry speichern und auslesen.
    Wie bekomme ich jetzt die Korrekten werte???

    Hier ist mein Code:

    RECT rcWindow;
        GetWindowRect(hwnd, &rcWindow);
        HKEY WindowhKey;//HKEY_LOCAL_MACHINE\SOFTWARE
        RegCreateKeyEx(HKEY_LOCAL_MACHINE,"Software\\Helper",0,0,REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL,&WindowhKey,0);
        DWORD dwNumber0 = rcWindow.top;
        RegSetValueEx(WindowhKey,"top",0,REG_DWORD,(BYTE*)&dwNumber0,sizeof(DWORD));
        DWORD dwNumber1 = rcWindow.bottom;
        RegSetValueEx(WindowhKey,"bottom",0,REG_DWORD,(BYTE*)&dwNumber1,sizeof(DWORD));
        DWORD dwNumber2 = rcWindow.left;
        RegSetValueEx(WindowhKey,"left",0,REG_DWORD,(BYTE*)&dwNumber2,sizeof(DWORD));
        DWORD dwNumber3 = rcWindow.right;
        RegSetValueEx(WindowhKey,"right",0,REG_DWORD,(BYTE*)&dwNumber3,sizeof(DWORD));
        RegCloseKey(WindowhKey);
    

    Danke

    Rene



  • Was soll daran nicht stimmen?
    Das Fenster reicht auf der X-Achste von 200 nach 600 und auf der Y-Achste von 200 nach 700. 200+400=600, 200+500=700.
    GetWindowRect gibt einem die Positionen des Fensters zurück und nicht die Breite und Höhe

    [ Dieser Beitrag wurde am 13.11.2002 um 10:12 Uhr von crass editiert. ]



  • ÄHHHHHHH darauf muss man ja erst mal kommen!

    Danke.


Anmelden zum Antworten