NumericUpDown mit WinAPI?



  • Danke! Aber abgesehen davon, dass die Funktion scheinbar veraltet ist, würde ich das gerne im Dialog-Editor machen können. Da gibt es ja dieses Spin-Control, das hat eine Eigenschaft "Auto-Buddy". Wenn ich das auf True setze, kann ich damit die Caption einer darüberliegenden Group-Box inkrementieren. 😃

    Was muss ich tun, damit ich den Wert in die Edit-Box bekomme? Ich hab gelesen, dass sich das Spin-Control als Buddy das vorige Fenster in der "Z-Order" holt. Was hat das zu bedeuten, wie kann ich es korrigieren, sodass dies die Edit-Box ist?

    Und ist das dann tatsächlich "der Weg", wie man sich solche NumericUpDown-Controls baut? Ich finde das eh bisschen merkwürdig, dass das so uneinheitlich ist. Ich kann zwar bei den Eigenschaften für das Edit-Control z.B. Einstellen, dass es nur Zahlen akzeptieren soll, aber es gibt keine Eigenschaft, dieses Edit-Control mit dem Spin-Control zu verknüpfen. Geht das etwa wirklich nur mit SendMessage()? Finde ich ganz schön umständlich, warum ist das denn so?

    Danke für eure Hilfe!



  • Hmmm, in meinem Resource Editor habe ich ein UpDown Steuerelement ...

    #define IDD_DLG1 1000
    #define IDC_UDN1 1001
    #define IDC_EDT1 1002
    IDD_DLG1 DIALOGEX 6,6,194,102
    CAPTION "IDD_DLG"
    FONT 8,"MS Sans Serif",0,0,0
    STYLE WS_VISIBLE|WS_OVERLAPPEDWINDOW
    BEGIN
      CONTROL "",IDC_UDN1,"msctls_updown32",WS_CHILD|WS_VISIBLE|UDS_AUTOBUDDY|UDS_SETBUDDYINT,52,27,11,11
      CONTROL "",IDC_EDT1,"Edit",WS_CHILD|WS_VISIBLE|WS_TABSTOP|ES_SUNKEN|ES_NUMBER|ES_RIGHT,26,27,26,11,WS_EX_CLIENTEDGE
    END
    


  • Was für ein Editor? Bei VS2005 gibt es keines. 👎



  • Hallo,

    Was für ein Editor? Bei VS2005 gibt es keines

    Dort heisst es "Spin Control" (englisch) oder Drehfeld.

    Und ist das dann tatsächlich "der Weg", wie man sich solche NumericUpDown-Controls baut?

    Das ist aber der Weg, den man nehmen soll, wenn man mit dem Resourcen-Editor arbeitet:

    Autom. Buddy auf true setzen, Buddy integer oder Ganzahl auf true setzen. Hat man dann direkt nach dem Platzieren des Edit-Felds das Drehfeld eingefügt, dann stimmt die Z-Order schon (es liegt direkt davor), wenn nicht, dann im Menü "Format" Tabulatorreihenfolge wählen, es erscheinen Zahlen an den Steuerelementen, und dann durch Anklicken der Zahlen es so einrichten, dass die Zahlen des Editfelds und des Drehfelds direkt aufeinander folgen, fertig.

    MfG,

    Probe-Nutzer



  • Probe-Nutzer schrieb:

    Dort heisst es "Spin Control" (englisch) oder Drehfeld.

    Verdammt noch eins, ich habe doch gesagt, daß in VS2005 kein so ein Element existiert, capice?



  • Peter Wutz schrieb:

    Verdammt noch eins, ich habe doch gesagt, daß in VS2005 kein so ein Element existiert, capice?

    Verdammt noch einmal, und wie soll ich dann diese Zitate von dir deuten:

    Peter Wutz schrieb:

    würde ich das gerne im Dialog-Editor machen können. Da gibt es ja dieses Spin-Control, das hat eine Eigenschaft "Auto-Buddy". Wenn ich das auf True setze, kann ich damit die Caption einer darüberliegenden Group-Box inkrementieren.

    ?

    MfG,

    Probe-Nutzer



  • http://www.radasm.com/resed/index.html

    p.s. Fluchen bringt überhaupt nichts, capice !?
    Wenn euch das Programmieren nicht bekommt oder Job euch fertig macht, dann zieht konsequenzen !



  • ????

    Der letzte Post ist nicht von mir! Ja, das Spin-Control kenne ich, hat jetzt mit deinem Tipp auch geklappt, also Danke Probe-Nutzer. 😉 Allerdings muss ich den Pfeil nach unten klicken, damit die Zahl hochgeht! Und man sieht auch, dass es zwei getrennte Controls sind. Das NumericUpDown-Control hingegen wirkt wie "eine Einheit". Die Buttons liegen optisch gesehen im Textfeld mit drinnen, es ist ein gemeinsamer Rahmen drumrum. Kann ich das mit dem Resource-Editor von VS auch noch irgendwie erreichen?

    Bzw. Danke für den Link, werde mir das auch mal näher ansehen! 🙂



  • ????

    Der letzte Post ist nicht von mir!

    Sorry, war auch nicht böse gemeint, das passiert eben, wenn man unregistriert ist, habe auch nicht genau darauf geachtet, dass du unregistriert bist, siehe unten...

    Allerdings muss ich den Pfeil nach unten klicken, damit die Zahl hochgeht!

    Das kannst du tatsächlich nur durch Senden von UDM_SETRANGE(32) ändern.

    Und man sieht auch, dass es zwei getrennte Controls sind. Das NumericUpDown-Control hingegen wirkt wie "eine Einheit". Die Buttons liegen optisch gesehen im Textfeld mit drinnen, es ist ein gemeinsamer Rahmen drumrum. Kann ich das mit dem Resource-Editor von VS auch noch irgendwie erreichen?

    Das wiederum ist einfach: wenn ein Spin Control ein Buddy eines Edit Controls ist, dann erreicht man durch Setzen von "Alignment" (Ausrichtung) auf "Right Align", dass es "richtig" aussieht.

    Unregistrierter schrieb:

    p.s. Fluchen bringt überhaupt nichts, capice !?
    Wenn euch das Programmieren nicht bekommt oder Job euch fertig macht, dann zieht konsequenzen !

    Was meine Antwort betrifft: Ich fand es eher witzig und nehme so etwas nicht ernst, deshalb habe ich einfach meine Antwort genau so begonnen, und du kannst mir glauben, es liegt nicht daran, dass ich schon zu lange (und es sind immerhin schon einige Jahre) als Software-Entwickler arbeite... 😉

    MfG,

    Probe-Nutzer



  • OK, jetzt ist es cool! 😃

    Danke!


Anmelden zum Antworten