Deutsch
Forum

Passwort eingabe wiederholen

 

Stephan
Topm
Hi,

Bin jetzt gerade erst auf XProfan gekommen und habe auch nicht sonderlich viel programmiererfahrung.
Habe in der Schule mal ein bisschen Pascal und C++ gelernt und verstehe eigentlich die meißten begriffe.

Mein Problem ist nun, dass ich eine Passwort abfrage erstellt habe als dialog und gerne wenn das Passwort falsch war eine erneute Eingabe stattfindet bis zum 3ten falschen versuch.

Wenn ich aber nun eine entsprechende Schleife um den Dialog lege wird bei jedem Tastendruck ein weiteres PW-Fenster geöffnet.

wäre super falls ihr mir helfen könntet, ansonsten werde ich mal mein glück weiter versuchen. ;D
 
04.09.2008  
 



Ein bischen Beispielcode wär hilfreich
 
04.09.2008  
 




Stephan
Topm
Das ist die Schleife die nach dem Dialog kommt.
KompilierenMarkierenSeparieren
Declare _pw%, Text%, Pass%, Pass$, Font%, OK%, Cancel%, F%, font1%
-Eingabefeld erstellen-
_pw%   = @Create("Dialog",%hWnd,"Cisco Configtool beta 1.0",10,10,400,220)
Text% = @Create("Text",_pw%,"Please insert Password:",20,20,300,20)
Pass% = @Create("Edit",_pw%,"",   20, 50,200,30)
Font% = @Create("Font","Lucida Console",12,0,0,0,0)
Font1% = @Create("Font","Lucida Console",24,0,0,0,0)
OK%     = @Create("DefButton",_pw%,"OK", 20,140, 100,30)
CANCEL% = @Create("Button",_pw%,"Cancel",130,140,100,30)
SetFont cancel%, font%
SetFont text%, font%
SetFont ok%, font%
SetFont Pass%, Font1%
sendmessage(Pass%,204,ord("*"),0)
@SetFocus(Pass%)
F% = 0

WhileNot F%

    WaitInput

    If Clicked(OK%)

        Pass$    = @GetText$(Pass%)

        If Pass$="Test"

            DestroyWindow(OK%)
            F% = 1
            DestroyWindow(_pw%)

        ElseIf Pass$ <> "Test"

            EnableWindow Text%,0
            EnableWindow Pass%,0
            EnableWindow OK%,0
            EnableWindow CANCEL%,0
            SLEEP 1500
            F% = 1
            DestroyWindow(_pw%)

        EndIf

    ElseIf @Clicked(CANCEL%)

        F% = 1
        DestroyWindow(_pw%)

    EndIf

EndWhile


hatte mir auch mal eines von deinen Beispielen angeguckt, aber leider nicht so wirklich verstanden. ;)
 
04.09.2008  
 



@Stephan: Der Code ist leider nicht lauffähig, ein lauffähiges Minimalbeispiel [...]  muss aber schon sein...

Du wirst sehen das Dein Problem dann ganz ganz ganz fix aus der Welt geschaffen wurde...
 
04.09.2008  
 




Stephan
Topm
so post wurde aktualisiert, sollte so lauffähig sein.

wie funktioniert das eigentlich mit den objects oder auch forms.
hab gelesen das es diesen object creator gibt der aber nicht unter der 10er funktioniert und etwas eingebundenes was ich aber irgendwie nicht finde.
 
04.09.2008  
 



Lediglich die Programmstruktur stand Dir hier im Wege:
KompilierenMarkierenSeparieren
 {$cleq}
Gemerkt/Separiert von http://xprofan.com/thread.core?t=6865
Declare _pw%, Text%, Pass%, Pass$, Font%, OK%, Cancel%, F%, font1%
-Eingabefeld erstellen-
_pw%   = @Create("Dialog",%hWnd,"Cisco Configtool beta 1.0",10,10,400,220)
Text% = @Create("Text",_pw%,"Please insert Password:",20,20,300,20)
Pass% = @Create("Edit",_pw%,"",   20, 50,200,30)
Font% = @Create("Font","Lucida Console",12,0,0,0,0)
Font1% = @Create("Font","Lucida Console",24,0,0,0,0)
OK%     = @Create("DefButton",_pw%,"OK", 20,140, 100,30)
CANCEL% = @Create("Button",_pw%,"Cancel",130,140,100,30)
SetFont cancel%, font%
SetFont text%, font%
SetFont ok%, font%
SetFont Pass%, Font1%
sendmessage(Pass%,204,ord("*"),0)
@SetFocus(Pass%)
F% = 0

while 1

    WaitInput

    If Clicked(OK%)

        case GetText$(Pass%)="Test" : break
        EnableWindow Text%,0
        EnableWindow Pass%,0
        EnableWindow OK%,0
        EnableWindow CANCEL%,0
        SLEEP 1500
        f%=f%+1
        case f%=3 : break
        EnableWindow Text%,1
        EnableWindow Pass%,1
        EnableWindow OK%,1
        EnableWindow CANCEL%,1

    ElseIf @Clicked(CANCEL%)

        f%=3
        break

    EndIf

endWhile

DestroyWindow(_pw%)
case f%=3 : end
print "geschafft"
waitkey
end
 
04.09.2008  
 




Stephan
Topm
Super!

Dankeschön, jetzt ergibt es auch sinn! ;)

hätte nicht gedacht, dass ich hier mit sprungmarken arbeiten muss.
 
04.09.2008  
 



Keine Sprungmarken im Code! (break bricht Schleife)

Obiges lässt sich auch nach 100 Wegen lösen, ich hätte es z.B. anders aufgebaut als Du oder Justus.
 
04.09.2008  
 




Michael
Wodrich
Hallo Stephan,


hab gelesen das es diesen object creator gibt der aber nicht unter der 10er funktioniert


Links unter "Rokosofts Object Creator - Offizieller Fensterhelfer" findest Du immer den neuesten.

Schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
04.09.2008  
 




Rolf
Koch

hab gelesen das es diesen object creator gibt der aber nicht unter der 10er funktioniert


Wer sagt denn sowas? Ein paar Bugs sind meist anzufinden, aber der Creator ist immer in den neusten Versionen gelaufen. Kuck doch einfach auf meiner Seite. [...] 
 
05.09.2008  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

1.428 Betrachtungen

Unbenanntvor 0 min.
Tommy04.01.2014
funkheld25.05.2012
Andreas Koch18.01.2012
Julian Schmidt21.12.2010

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie