AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Lazarus (IDE) Passworteingabe, wie mit Sternchen verstecken, aber nicht das letzte Zeichen?
Thema durchsuchen
Ansicht
Themen-Optionen

Passworteingabe, wie mit Sternchen verstecken, aber nicht das letzte Zeichen?

Ein Thema von AlexII · begonnen am 17. Aug 2015 · letzter Beitrag vom 19. Aug 2015
Antwort Antwort
Perlsau
(Gast)

n/a Beiträge
 
#1

AW: Passworteingabe, wie mit Sternchen verstecken, aber nicht das letzte Zeichen?

  Alt 19. Aug 2015, 08:09
Aber um mal auf das Problem zurückzukommen. Man müsste da wohl was mit einem Timer bauen, die Eingaben durch echte Sternchen ersetzen und sich die echte Eingabe irgendwo merken. So sollte es irgendwie gehen. Aber wie gesagt, mir wäre das zu mühsam, so was jetzt zu implementieren.
Genau das hatte ich bereits in #2 vorgeschlagen:
... das machst du einfach in OnChange. Allerdings mußt du dir den wahren Inhalt des Edits in einer privaten Stringvariablen merken, denn wenn du im Edit nach einer gewissen Timer-Zeit das zuletzt eingegebene Zeichen änderst, änderst du natürlich das Text-Property.
Doch vielleicht wartet der TE aber auch einfach ab, bis man ihm eine "Ein-Klick-Methode" präsentiert, die das Problem löst

Aber wie gesagt, mir wäre das zu mühsam, so was jetzt zu implementieren.
Das ist doch nur ne Sachen von 5 min...
Sehe ich genauso: Im OnChange des betroffenen Edits den Timer starten, im Timer-Ereignis den Austausch vornehmen, dort auch die Merk-Variable aktualisieren und den Timer wieder anhalten. Vielleicht bräuchte man auch fünf Minuten, aber bestimmt keine zehn ... obwohl, als Anfänger vielleicht auch 20 ...
Ach ja, man muß natürlich auch die Del- und die Backspace-Taste entsprechend berücksichtigen, da ja die Merkvariable immer aktualisiert werden muß, also vielleicht sechs Minuten, als Anfänger wären das dann vielleicht 30 Minuten ...

Geändert von Perlsau (19. Aug 2015 um 08:14 Uhr)
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#2

AW: Passworteingabe, wie mit Sternchen verstecken, aber nicht das letzte Zeichen?

  Alt 19. Aug 2015, 08:15
Das Problem ist, meine Anwendung läuft ohne Tastatur, muss also für die Passworteingabe 9 Buttons erstellen, mit Zahlen und Buchstaben, so wie die alten Handys das haben. Die virtuelle Tastatur von Windows will ich aus bestimmten Gründer nicht nutzen. Ich arbeite also noch an meiner "Handy-Tastatur", die Passwortversteckerei kommt noch. ))
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#3

AW: Passworteingabe, wie mit Sternchen verstecken, aber nicht das letzte Zeichen?

  Alt 19. Aug 2015, 08:18
Wo ist da das Problem? Das ist doch kein Problem, das ist lediglich eine Aufgabe. Ein Problem wäre es, wenn du nicht weiterkämst, also nicht wüßtest, wie du das programmieren kannst.
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#4

AW: Passworteingabe, wie mit Sternchen verstecken, aber nicht das letzte Zeichen?

  Alt 19. Aug 2015, 08:22
Wo ist da das Problem? Das ist doch kein Problem, das ist lediglich eine Aufgabe. Ein Problem wäre es, wenn du nicht weiterkämst, also nicht wüßtest, wie du das programmieren kannst.
Jah... es geht noch... komme gut voran.
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.165 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Passworteingabe, wie mit Sternchen verstecken, aber nicht das letzte Zeichen?

  Alt 19. Aug 2015, 08:30
Das Problem ist, meine Anwendung läuft ohne Tastatur, muss also für die Passworteingabe 9 Buttons erstellen, mit Zahlen und Buchstaben, so wie die alten Handys das haben.
Dann 2 Min. da nicht das Problem besteht, das ein User mit der Maus mitten in die Eingabe klickt...

Delphi-Quellcode:
var
    Ein,PW : ShortString;

procedure TForm86.Edit1Change(Sender: TObject);
begin
  Ein := Edit1.Text;
  Timer1.Enabled := true;
end;

procedure TForm86.Timer1Timer(Sender: TObject);
var
  i : integer;
begin
  Timer1.Enabled := false;

  for i:=1 to length(Ein) do
    if (Ein[i] <> '*') and (Length(Ein) > Length(PW)) then
      PW := PW + Ein[i];

  PW[0] := Ein[0];

  for i:=1 to length(Ein) do
    Ein[i] := '*';

  Edit1.Text := Ein;
  Edit1.SelStart := Length(Ein);
end;
Oder habe ich auf die schnelle etwas übersehen? (geht sicherlich auch schöner)
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#6

AW: Passworteingabe, wie mit Sternchen verstecken, aber nicht das letzte Zeichen?

  Alt 19. Aug 2015, 08:33
@Mavarik Sage mal, du schaltest den Timer vor dem zu verarbeitenden Code aus, ist das gut so? Ich weiß der Code wird abgearbeitet, aber ich hatte immer bedenken bei sowas...
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.165 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: Passworteingabe, wie mit Sternchen verstecken, aber nicht das letzte Zeichen?

  Alt 19. Aug 2015, 08:38
@Mavarik Sage mal, du schaltest den Timer vor dem zu verarbeitenden Code aus, ist das gut so? Ich weiß der Code wird abgearbeitet, aber ich hatte immer bedenken bei sowas...
Warum? Woher kommen deinen Bedenken? "Er" springt dann sicherlich nicht aus der Procedure raus...
Ich möchte doch nicht, dass die ganze Zeit der Timer in 250ms feuert...
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.821 Beiträge
 
Delphi 12 Athens
 
#8

AW: Passworteingabe, wie mit Sternchen verstecken, aber nicht das letzte Zeichen?

  Alt 19. Aug 2015, 08:40
Im OnTimer-Event schaltet man doch immer den Timer aus. Oder habe ich etwas verpasst?

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#9

AW: Passworteingabe, wie mit Sternchen verstecken, aber nicht das letzte Zeichen?

  Alt 19. Aug 2015, 08:42
Im OnTimer-Event schaltet man doch immer den Timer aus. Oder habe ich etwas verpasst?

Sherlock
Habe ich auch immer gemacht, war mir aber nicht sicher.
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.165 Beiträge
 
Delphi 10.3 Rio
 
#10

AW: Passworteingabe, wie mit Sternchen verstecken, aber nicht das letzte Zeichen?

  Alt 19. Aug 2015, 08:45
Im OnTimer-Event schaltet man doch immer den Timer aus.
Immer? Wieso Immer?

Wenn ich einen zyklischen Timer brauche schalte ich Ihn doch nicht ab...

Wenn ich den Timer refreshen will dann ein

Delphi-Quellcode:
Timer1.Enabled := false;
Timer1.Enabled := true;
OK... Oder meine Routine dauert länger als das Interval des Timers (Ich hoffe nicht)... dann auch...
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz