Teil 8: Gadgets Deaktivieren

 

 
    
If OpenWindow(0,100,100,500,400,"Fenster 1",#PB_Window_SystemMenu)

  If CreateGadgetList(WindowID(0))
    ButtonGadget(1,20,20,100,20,"Knopf 1")
    ButtonGadget(2,20,80,100,20,"Knopf 2")

    ListViewGadget(3,150,20,330,80)
    StringGadget(4,20,120,360,20,"")
    ButtonGadget(5,400,120,80,20,"Übernehmen")
    ProgressBarGadget(6,20,160,360,20,1,100000)
    ButtonGadget(7,400,160,80,20,"Start")
    ButtonGadget(8,20,200,200,20,"Gadgets aufdecken")
    ButtonGadget(9,280,200,200,20,"Gadgets verstecken")

    ButtonGadget(10,20,240,200,20,"Gadgets aktivieren")
    ButtonGadget(11,280,240,200,20,"Gadgets deaktivieren"
)

  EndIf

  Repeat
    EventID = WaitWindowEvent()
      If EventID = #PB_Event_CloseWindow 
        Quit = 1
      EndIf
      If EventID = #PB_Event_Gadget
        If EventGadget()=1
          MessageRequester("Achtung!","Knopf 1 wurde gedrückt !",0)
          AddGadgetItem(3,-1,"Knopf 1 wurde gedrückt !")
        EndIf
        If EventGadget()=2
          MessageRequester("Achtung!","Knopf 2 wurde gedrückt !",0)
          AddGadgetItem(3,-1,"Knopf 2 wurde gedrückt !")
        EndIf
        If EventGadget()=5
          a$=GetGadgetText(4)
          AddGadgetItem(3,-1,"Ihre Eingabe :"+a$)
        EndIf

          If EventGadget()=7
            For a=1 To 100000
           SetGadgetState(6,a)
            Next
          EndIf

          If EventGadget()=8
            For a=1 To 7
           HideGadget(a,0)
            Next
          EndIf
          If EventGadget()=9
            For a=1 To 7
           HideGadget(a,1)
            Next
      
EndIf

         If EventGadget()=10
            For a=1 To 9
            DisableGadget(a,0)
            Next
         EndIf
      
If EventGadget()=11
         
For a=1 To 9
            
DisableGadget(a,1)
         
Next
      
EndIf


     
EndIf
 
Until Quit=1
EndIf
End

 

Zwei neue Schalter, der zweite soll die Gadgets 1-9 deaktivieren, der erste wieder aktivieren. Um ein Gadget zu deaktivieren, benutzt man den Befehl DisableGadget mit den Parametern: Nummer des Gadget, Status des Gadget (1=deaktivieren, 0=aktivieren).

Um den Befehl nicht 9 mal einzugeben, benutzen wir wieder eine For-Next-Schleife.

Im Gegensatz zu dem HideGadget-Befehl, sind hier die Gadgets noch sichtbar. Sie erscheinen in einem leichten Grauton und sind nicht mehr benutzbar.

 

Resultat nach Drücken des Schalters Start:

Vor dem Drücken des Schalters:

 

Nach dem Drücken des Schalters:

 

 

WEITER