Styles aneinander Reihen ???



  • Hi Leute,

    mir ist beim programmieren mit der WinApi was ganz wesentliches aufgefallen,
    was ich noch nicht ganz verstehe :

    CreateWindowEx( WS_EX_APPWINDOW | WS_EX_WINDOWEDGE,szClassName,szWindowName,
    
    [b]WS_OVERLAPPEDWINDOW & ~WS_THICKFRAME & ~WS_MAXIMIZEBOX | WS_CLIPSIBLINGS|
    WS_CLIPCHILDREN,[/b]
    					CW_USEDEFAULT,
    					CW_USEDEFAULT,
    					CW_USEDEFAULT,
    					CW_USEDEFAULT,
    					NULL,
    					NULL, 
    					hInstance, 
    					NULL );
    

    Bisher kenn ich die normale Combinations-Möglichkeit mit dem "Bitweisen ODER-Operator", aber jetzt treten da der "Bitweise UND-Operator" und dieses Zeichen auf "~".

    Könnt ihr mir Links zum nachlesen geben , oder erklären, wie man die jetzt
    zu verstehen hat und benutzt ?

    Mfg

    jookerxxx


  • Mod

    Ich hätte Klammern gesetzt, dammit man es besser versteht.
    (WS_OVERLAPPEDWINDOW & ~WS_THICKFRAME & ~WS_MAXIMIZEBOX) | WS_CLIPSIBLINGS|
    WS_CLIPCHILDREN

    1. ~WS_xxx erzeugt eine Negation des/der Bits, die normalerweise durch diesen define bestimmt werden. D.h. eine Bitmaske in der eine 1 steht überall wo vorher 0 war bzw. 0 wo vorher eine 1 war
    2. In Verbindung mit & löscht diese Maske nun genau diese Bitpositionen

    In Worten bedeutet
    (WS_OVERLAPPEDWINDOW & ~WS_THICKFRAME & ~WS_MAXIMIZEBOX)
    also
    WS_OVERLAPPEDWINDOW ohne die Stile WS_THICKFRAME und WS_MAXIMIZEBOX.

    HTH



  • Danke Danke Danke 🙂

    Du bist gold Wert 🙂
    Jetzt hab ich's verstanden 😛


Anmelden zum Antworten