Handle merkt das object das abgelegt wurde



  • gruß an alle!

    da ich ziemlich neu bin in c, ( aber mit kenntnissen in java2) hab ich einen buch gelesen, wobei ich bei einem punkt stehen geblieben bin, das ich nicht verstehe,

    im buch steht:

    HBRUSH halt;
    halt = SelectObject(hdc, hschwarz);
    

    In (oben genannten code) zeigen wir, dass SelectObject als Ergebnis einen Handle liefert.Dieser Handle gibt an, welches object-aus der hand gelegt- wurde ,als das neue Object ausgewählt wurde.
    ---------
    so meine frage ist:
    wie soll halt wissen welches object schon als standard ausgewählt wurde??
    denn

    SelectObject(hdc, hschwarz)
    

    folgt doch nur das hschwarz gewählt wird! und somit wird mit halt = wähle objekt schwarz gewählt und nicht wähle standard object?!
    kann mir einer helfen?



  • also korrektur:

    im buch steht:

    ------------------------------
    In

    hbalt = SelectObject(hdc, hbschwarz);
    

    zeigen wir dass SelectObject als Ergebniss einen Handle liefert, Dieser Handle gibt an, welches Object - aus der hand gelegt- wurde als das neue Object ausgewählt wurde, in hbalt merken wir uns den vorhergehenden Pinsell, damit wir ihn vor dem Verlassen von Malen mit :

    SelectObject(hdc, hbalt);
    

    wieder aktivieren können!
    ---
    meine frage wie das denn?
    wie soll SelectObject wissen welches object aus der hand gelegt wurde wenn das ergebniss neuer pinsel wählen ist?
    also das ergeniss von SelectObject.... ist doch einen neuen Pinsel wählen und nicht die alte zu merken, und damit kann es doch nicht in hbalt gespeichert werden!
    bitte helft mir 😉



  • 1.) man kann editieren
    2.) ich habe kA!

    es wird dich recht bald ein Moderator nach WinAPI verschieben 😉

    mfg (c)h



  • Dieser Thread wurde von Moderator/in Shade Of Mine aus dem Forum ANSI C in das Forum WinAPI verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • chille07 schrieb:

    1.) man kann editieren

    Nicht als Unregistrierter 😉

    Der Code ist schon richtig, denn SelectObject gibt dir das zuvor in den DC selektierte Objekt zurück. Als Verdeutlichung: In deinen DC ist ein schwarzer Pen und ein weißer Hintergrund-Brusch selektiert - selektierst du nur einen roten Pen in deinen DC, so wird dir ein Handle auf den schwarzen Pen zurückgegeben 🙂


Anmelden zum Antworten