Windows 10: WM_MOUSEMOVE und WM_NCMOUSEMOVE



  • hallo leute

    hab mich bissl mit den mouse messages rumgespielt und steig da bei den xxxx-MOUSEMOVE messages nicht so ganz dahinter warum das so läuft.

    Hab ein Fenster mit einem ClientRect von 472x235.
    hab die WM_MOUSEMOVE und WM_NCMOUSEMOVE gefangen und in der titelleiste des
    fenster angezeigt.
    scheinbar gibt es ausserhalb des fensters nochmal einen ClientRect bereich und einen 2ten NonClientBereich.
    hab mal screenshots davon gemacht. da der maus-cursor nicht am screenshot drauf ist, hab ich einen roten punkt darauf gemacht, wo ungefaehr die maus war.

    screen1:
    hier war ich mit der mouse links oben im non-client bereich. koordinaten werden
    bezogen auf den bildschirmursprung angezeigt.
    http://komports.de/mousemove/screen1.jpg

    screen2:
    hier war ich im client bereich rechts unten:
    http://komports.de/mousemove/screen2.jpg

    screen3:
    jetzt nonclient bereich rechts unten. noch alles wie erwartet:
    http://komports.de/mousemove/screen3.jpg

    screen4:
    jetzt wird es interessant. ich bin rechts unten ausserhalb des nonclient bereiches. mein fenster erhält noch immer WM_MOUSEMOVE messages:
    http://komports.de/mousemove/screen4.jpg

    screen5:
    rechts unten, am ende des schattenbereiches kommt dann wieder eine WM_NCMOUSEMOVE message. also nochmal nonclient bereich des fensters.
    http://komports.de/mousemove/screen5.jpg

    warum wird sowas gemacht ? ich finde keinen grund fuer so ein verhalten.

    Meep Meep


Anmelden zum Antworten