GadgetString(...#PB_String_Password)

Anfängerfragen zum Programmieren mit PureBasic.
BginnR
Beiträge: 39
Registriert: 06.12.2008 19:44
Kontaktdaten:

GadgetString(...#PB_String_Password)

Beitrag von BginnR »

Hi,
ich hätt da wieder einmal ne Frage.
Also ich hab mit PB ein Fenster geöffnet, und hab einen GadgetString Passwort eingefügt, jetzt frag ich mich ob man wie bei der Console ein Input angeben kann, also das ermitteln was ich zuvor da reingeschrieben habe, und dass der Button nur gedrückt werden kann wenn das Passwort stimmt?
Danke für jede antwort schon mal im Voraus
PB 3.30
PB 4.30 Demo
Benutzeravatar
cxAlex
Beiträge: 2111
Registriert: 26.06.2008 10:42

Beitrag von cxAlex »

Code: Alles auswählen

pwd = StringGadget(#PB_Any, 5, 5, 70, 20, "", #PB_String_Password)
DisableGadget(Button, #True)
Pwd$ = GetGadgetText(pwd)
If Pwd$ = RefPwd$
  DisableGadget(Button, #False)
Endif
Denn Code halt noch in den EventLoop streuen, dazu hatte ich grade keine Lust.
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster

Bild

PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
BginnR
Beiträge: 39
Registriert: 06.12.2008 19:44
Kontaktdaten:

Beitrag von BginnR »

Ohh ä danke für die schnelle antwort, aber irgendwie kapier ich das nicht ganz.
PB 3.30
PB 4.30 Demo
Benutzeravatar
cxAlex
Beiträge: 2111
Registriert: 26.06.2008 10:42

Beitrag von cxAlex »

Ich denke das sollte alles erklären:

Code: Alles auswählen

EnableExplicit

Define Event, Win, Button, Pwd, RefPwd$, Pwd$

RefPwd$ = "geheim"

Win = OpenWindow(#PB_Any, 0, 0, 155, 30, "Test", #PB_Window_ScreenCentered)
Pwd = StringGadget(#PB_Any, 5, 5, 70, 20, "", #PB_String_Password)
Button = ButtonGadget(#PB_Any, 80, 5, 70, 20, "Beenden")
DisableGadget(Button, #True)

Repeat
  Event = WaitWindowEvent()
  
  Select Event
    Case #PB_Event_Gadget
      Select EventGadget()
        Case Pwd
          Pwd$ = GetGadgetText(Pwd)
          If Pwd$ = RefPwd$
            DisableGadget(Button, #False)
          Else
            DisableGadget(Button, #True)
          EndIf
          
        Case Button
          End
          
      EndSelect
  EndSelect
  
ForEver
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster

Bild

PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

ja nee.. nich ganz...
du musst noch nen "abschicken" button dazupacken, oder auf die Eingabetaste reagieren.

es hat ja keinen wert, wenn in JEDEM eventdurchlauf das password geprüft wird.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
BginnR
Beiträge: 39
Registriert: 06.12.2008 19:44
Kontaktdaten:

Beitrag von BginnR »

:mrgreen:
ja cool,
thx ich habs gescheckt. :allright:
PB 3.30
PB 4.30 Demo
Andesdaf
Moderator
Beiträge: 2671
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Beitrag von Andesdaf »

übrigens... kein GadgetString, sondern StringGadget() :wink:
Win11 x64 | PB 6.20
Antworten