Win32 API Begriffe



  • Hi,

    ich habe mir vor 7 Tagen das Buch von Charles Petzold geholt "Windows Programmierung 5. Auflage" und habe bis jetzt bis Seite 127 gelesen und eins was mir noch so unsicher vorkommt sind diese Begriffe:

    Handle,
    Gerätekontex (da steht ja auch das es für Zeichenaktionen gebraucht wird),
    wParam (soll wie argv sein, aber was behinhaltet diese Variable)
    lParam ("-------------------------^---------------------------")

    Eins was mich so noch unsicher macht, das alles ja sehr gut erklärt wird, aber daraus eine wissenschaft gemacht wird, nicht so wie bei der Reihe "für Dummies".

    Könnt ihr mir helfen bei der kleinen Verwierrung :)?



  • Spielgrips schrieb:

    ... nicht so wie bei der Reihe "für Dummies".

    Deswegen ist das Buch auch ein 'Fachbuch'

    ... du solltest eigentlich alles mit der Suchfunktion finden, aber kurz:
    Handle: 'eine Art Zeiger auf ein Objekt' - (ich weiß, dass die Erklärung Mist ist, aber sie ist einfach)
    Gerätekontext: such mal ...
    WPARAM/LPARAM: Variablen mit je nach Nachricht unterschiedlichen Bedeutungen

    M.T.



  • Handle: Du erstellst ein Fenster und willst was darauf ausgeben. Woher weiß Windows welches Fenster gemeint ist? Genau, Handles. Ein Handle ist meistens lediglich eine integer Variable in der eine Nummer drin steht, diese Nummer verwaltet Windows intern.
    So denke ich mir das jedenfalls... 😃
    WPARAM: und Co. genau wie oben. Nachrichten in Form von Zahlen. Lediglich durch

    #define WM_CLOSE 0x0010
    

    wird es dem Programmierer ein bissel einfacher gemacht. 😋



  • WPARAM hat eigentlich nichts direkt mit den Nachrichten an sich zu tun, sondern darin findest du meist irgendwelche zusätzlichen Infos (was genau findest du in der Beschreibung zur jeweiligen Message)



  • Schmeiss das teure aufgeblähte Buch gleich zur Seite.
    Ist voll der Muzrks. Icvh finde da ist alles zu genau erklärt und nicht so wie du sagst. Außerdem ist das teil im Preis/Leistungsverhältbis schlecht. Soo teuer und nicht besser als andere bücher. Aber da siond dinge shcon verständlich erklärt.

    Ich empfehle dir dringend:

    ISBN: 3-8273-1747-9 vom Addison - Wesley Verlag. Es heißt: "Windows Programmierung mit C++" und ist von Henning Hansen. Ist genau das richtige für dicg. GLAUB MIR! Außerdem nur ca. 10€. Ich fands schon immer hammer...

    OK, viel spass beim lernen...



  • @BreakerMaker

    Das Buch (Hansen Henning) habe ich als Ebook und ich kann dir nur eine zweigeteilte Meinung dazu sagen, im Charles Petzold muss man schon bisschen suchen bis man alles verstanden hat, aber ich finde das jeder sein Eigenprevileg ist, wie er das Buch verstanden hat.

    @An Alle:

    lParam : sind die Messages oder Nachrichten für die Maus gespeicher + y, x Koordination (richtig?)

    wParam : ist das Gegenteil von der Maus, die Tastatur? (+Nachrichten)



  • Spielgrips schrieb:

    @An Alle:

    lParam : sind die Messages oder Nachrichten für die Maus gespeicher + y, x Koordination (richtig?)

    wParam : ist das Gegenteil von der Maus, die Tastatur? (+Nachrichten)

    Wie kommst du denn jetzt auf sowas? 😕 😕 😕 😕 😮



  • @die

    Ich meinte nur das wParam das Gegenteil von lParam wär, weil das Gegenteil von der Maus ja die Tastatur ist 😃 ...

    Weil im Buch von "Charles Petzold" steht das lParam die Koordinaten + Nachrichten von der Maus enthält da muss doch wParam das Gegenteil sein, weil ja die Tastatur auch Nachrichten zum Fenster schickt 🙄 *wissenschaftlichgucken*...

    Eins was mich hier auf die Idee bringt, kann man doch hier im Forum sowas wie Namenindex für die Namen einrichten,
    z.B.:

    HINSTANCE = Fensterhandle
    HWND = handle

    So das wenn man was sucht gleich auf die Lösung kommt 👍 👍 *Tipp ans Forum* 💡 🕶



  • HINSTANCE = Handle zu einer INSTANCE des Programmes = Instanzenhandle (wird z. B. benötigt, um Resourcen aus besagtem Programm zu laden)

    HWND = Handle to a WiNDow = Fensterhandle

    Message WM_COMMAND
    wParam: The high-order word specifies the notification code (z. B. BN_CLICKED bei einem Button) if the message is from a control. If the message is from an accelerator, this value is 1. If the message is from a menu, this value is zero.
    The low-order word specifies the identifier of the menu item (z. B. IDM_MENUEEINTRAG1), control (z. B. IDC_BUTTON1), or accelerator (z. B. ID_ACCEL1).

    lParam: Handle zum Control, welches die Message gesendet hat (falls die Message von einem Control kommt) ansonsten NULL

    Message LB_ADDSTRING
    wParam: Unbenutzt
    lParam: String, der der Listbox hinzugefügt werden soll

    Wo ist da die Maus? Wo die Tastatur?
    wParam und lParam sind, wie bereits mehrfach in diesem Thread erwähnt, weiterführende Infos, die zur entsprechenden Message gehören und bei jedem Messagetyp eine andere Bedeutung haben...



  • BreakerMaker. schrieb:

    Icvh finde da ist alles zu genau erklärt

    Mist. Hättest du mir das nicht mal vorhersagen können? Da kaufe ich mir das Buch und was ist? Am Ende weiß ich mehr als vorher. Ist ja voll Kacke.



  • @Hepi

    aha, LB_ADDSTRING kenne ich noch nicht, muss ich noch weiterlesen...

    @Luckie

    Hansen Henning mit sein Buch ist man auch nicht weiter, nimm lieber Petzold, ich habe Hansen Henning als Ebook und da ist weniger Inhalt drin als bei Petzold..



  • Off(Topic){
    lol, der hätte von mir sein können 😉
    }



  • lParam: Handle zum Control, welches die Message gesendet hat (falls die Message von einem Control kommt) ansonsten NULL

    Mhh, Handle zum Control, aber wie berechnet der Charles Petzold seine x,y Koordination, ein Beispiel vom Buch:

    // Berechnung von x,y Koordination (Anwendungsbereich)
    
    cxClient = LOWORD (lParam) ;
    cyClient = HIWORD (lParam) ;
    

    Ich bin noch sehr verwierrt, erst soll es eine Handle sein bei einen anderen wieder was anders, was stimmt den nun 😕 😮 😞 *help*



  • Mensch Kerl, weil bei DER Message, die er da grad behandelt, die Koordinaten in lParam hinterlegt sind....

    Für jemanden, der anscheinend nicht lesen zu können scheint bist Du ziemlich mutig, wenn Du Dir ein Buch kaufst...

    Keine 5 Antworten über Deiner steht das hier:

    wParam und lParam sind, wie bereits mehrfach in diesem Thread erwähnt, weiterführende Infos, die zur entsprechenden Message gehören und bei jedem Messagetyp eine andere Bedeutung haben...



  • @Hepi

    Jeder macht doch sein Anfang in Winapi, nach 1 Jahr werde ich nur so paar Minifragen stellen, in diesen vorigen Absatz konnte ich meine Infos rausholen ;)!

    -->> nochmal zum Thema Lesen, "ICH KANNS :p "

    Da würde ich sagen das du blind bist, weil du meine Fragen mit seinen Wert nicht erkennst nur trüber guckst 😃 ..


Anmelden zum Antworten