Cursorform



  • Guten Tag

    (Hab grad mal kurz gesucht aber nix passsendes zu dem Thema gefunden, deshalb frag ich mal so nach)

    Also folgendes kleine Problem: Ich nutzte in meiner Anwendung einen selbst definierten Cursor und setzte ihn hier in der Windowclass fest:

    ...
     wndclass.hCursor       = LoadCursor (hInstance, (LPCTSTR) IDC_CURSOR1) ;
    ...
    

    Das Funktioniert soweit ganz gut. Nun hat mein Fenster auch noch ein Menü bekommen mit:

    ...
    wndclass.lpszMenuName  = (const char *)IDR_MENU1 ;
    ...
    

    Und jetzt ändert sich der Cursor wieder in den Microsoft-**standard, wenn ich mit der Maus auf das Menü 'fahre'.

    Also die Frage ist: Wie bestimm ich meinen eigenen Cursor, wenn die Maus übers Menü oder über Fensterrahmen und Titelleiste fährt?
    (Mit

    WM_MOUSEMOVE: setcursor(); gehts auch nicht
    

    )**



  • Du kannst überprüfen, ob du dich noch im Clientbereich befindest, wenn nicht befindest du dich auf dem Menü. Dann kannst du den Cursor neu Laden.
    Das ganze musst du in dem Ereignis WM_MOUSEMOVE abhandeln.



  • mmh

    aber auch wenn ich immer (jedesmal egal ob ich im Clientbereich oder nicht bin) bei WM_MOUSEMOVE den Cursor neu Lade und setzte, bleibt dennoch im Menü, im Rahmen und in der Titelleiste der Standardcursor.


Anmelden zum Antworten