Seite 1 von 1

#Button_5 spinnt rum und löscht den string

Verfasst: 17.11.2006 21:55
von 3DKante
Hi, ich kann das nicht so gut beschreiben aber ich versuchs. :)

Mein problem ist folgendes.
Wen ich z.b. Button_1 bis Button_4 anklicke, dan werden die zahlen 1 bis 4 zu einem String hinzugefügt. Aber wen ich anschliesend Button_5
anklicke dan wird der gesamte string gelöscht und nur die 5 hinzugefügt. :|

hier ist mein code

Code: Alles auswählen


Enumeration
  #Window_0
EndEnumeration

;- Gadget Constanten
;
Enumeration
  #Frame3D_0
  #Button_0
  #Button_1
  #Button_2
  #Button_3
  #Button_4
  #Button_5
  #Button_6
  #Button_7
  #Button_8
  #Button_9
  #Button_10
  #String_0
  #Listview_0
  #Hyperlink_0
EndEnumeration


If OpenWindow(#Window_0, 216, 0, 502, 502,  #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered , "Gadgets Test")
    If CreateGadgetList(WindowID())
      Frame3DGadget(#Frame3D_0, 10, 10, 480, 480, "Gadget Tests")
      ButtonGadget(#Button_0, 350, 150, 40, 40, "0")
      ButtonGadget(#Button_1, 350, 110, 40, 40, "1")
      ButtonGadget(#Button_2, 390, 110, 40, 40, "2")
      ButtonGadget(#Button_3, 430, 110, 40, 40, "3")
      ButtonGadget(#Button_4, 350, 70, 40, 40, "4")
      ButtonGadget(#Button_5, 390, 70, 40, 40, "5")
      ButtonGadget(#Button_6, 430, 70, 40, 40, "6")
      ButtonGadget(#Button_7, 350, 30, 40, 40, "7")
      ButtonGadget(#Button_8, 390, 30, 40, 40, "8")
      ButtonGadget(#Button_9, 430, 30, 40, 40, "9")
      ButtonGadget(#Button_10, 390, 150, 80, 40, "Enter")
      StringGadget(#String_0, 230, 190, 100, 20, "")
      ListViewGadget(#Listview_0, 230, 40, 100, 140)
            
    EndIf 
    
    Repeat
      EventID=WaitWindowEvent()
      If EventID=#PB_Event_CloseWindow
        Quit=1
      EndIf
      If EventID=#PB_Event_Gadget
      
        If EventGadgetID()=#Button_0
          Zahl$=Str(0)
          ZahlString$+Str(0)
          AddGadgetItem(#Listview_0,-1,Zahl$)
        EndIf 
        If EventGadgetID()=#Button_1
          Zahl$=Str(1)
          ZahlString$+Str(1)
          AddGadgetItem(#Listview_0,-1,Zahl$)
        EndIf
        If EventGadgetID()=#Button_2
          Zahl$=Str(2)
          ZahlString$+Str(2)
          AddGadgetItem(#Listview_0,-1,Zahl$)
        EndIf
        If EventGadgetID()=#Button_3
          Zahl$=Str(3)
          ZahlString$+Str(3)
          AddGadgetItem(#Listview_0,-1,Zahl$)
        EndIf
        If EventGadgetID()=#Button_4
          Zahl$=Str(4)
          ZahlString$+Str(4)
          AddGadgetItem(#Listview_0,-1,Zahl$)
        EndIf
        If EventGadgetID()=#Button_5
          Zahl$=Str(5)
          ZahlString$=Str(5)
          AddGadgetItem(#Listview_0,-1,Zahl$)
          Debug ZahlString$
        EndIf
        If EventGadgetID()=#Button_6
          Zahl$=Str(6)
          ZahlString$+Str(6)
          AddGadgetItem(#Listview_0,-1,Zahl$)
        EndIf
        If EventGadgetID()=#Button_7
          Zahl$=Str(7)
          ZahlString$+Str(7)
          AddGadgetItem(#Listview_0,-1,Zahl$)
        EndIf
        If EventGadgetID()=#Button_8
          Zahl$=Str(8)
          ZahlString$+Str(8)
          AddGadgetItem(#Listview_0,-1,Zahl$)
        EndIf
        If EventGadgetID()=#Button_9
          Zahl$=Str(9)
          ZahlString$+Str(9)
          AddGadgetItem(#Listview_0,-1,Zahl$)
        EndIf
        If EventGadgetID()=#Button_10
          MessageRequester("Info",ZahlString$,0)
          If Len(ZahlString$)=8
            Leeren$=Space(1)
            ZahlString$=Leeren$
          EndIf
        EndIf
        ;... 
      EndIf
    Until Quit=1
    
EndIf
End
obwohl es der gleiche code ist wie bei den andern #Buttons wird der String nur bei dem #Button_5 "gelöscht" :freak:
hoffe da kann mir wer weiterhelfen <)

Verfasst: 17.11.2006 22:08
von Helle
Ist nur ein Schreibfehler bei der "5": Muss "+" statt "=" heissen (bei ZahlString$).

Gruss
Helle

Verfasst: 17.11.2006 23:56
von 3DKante
Oooh lol das habe ich überhaupt nicht bemerkt :oops:
obwohl ich es mehrmals durchgegangem bin
Danke :)

Verfasst: 19.11.2006 17:49
von PureBasic4.0
Helle hat geschrieben:Ist nur ein Schreibfehler bei der "5": Muss "+" statt "=" heissen (bei ZahlString$).
Bei mir hat es auch ohne veränderung des codes funktioniert.

Verfasst: 19.11.2006 17:50
von a14xerus
dann bist du komisch

Verfasst: 19.11.2006 17:57
von Alves
@ a14xerus

Da hast du recht!

Verfasst: 19.11.2006 19:27
von PureBasic4.0
a14xerus hat geschrieben:dann bist du komisch
Nein, bin ich nicht. habe den code so übernommen wie er da steht und Button_5 hat nichts gelöscht

Verfasst: 19.11.2006 19:37
von Alves
ER löscht ja auchn ichts, sondern überschreibt den String, anstatt ihm was hintendranzuhängen.

Verfasst: 20.11.2006 09:06
von dllfreak2001
aber wozu str(5) wenn man gleich "5" eingeben kann?

Verfasst: 20.11.2006 12:57
von Tafkadasom2k5
dllfreak2001 hat geschrieben:aber wozu str(5) wenn man gleich "5" eingeben kann?
Das ist mir auch gerade aufgefallen...

Besetze die Strings lieber so

Code: Alles auswählen

Zahl$="2" 
Somit hast du sogar noch einen (kleinen) Geschwindigkeits-Vorteil erreicht :)

Gr33tz
Tafkadasom2k5