Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   4- Stelliger Integer (https://www.delphipraxis.net/178439-4-stelliger-integer.html)

Luki206 8. Jan 2014 15:53

4- Stelliger Integer
 
Hi,
ich entschuldige mich an dieser Stelle für meine Überschrift nur ist mir im Moment keine Passende eingefallen. Ich habe folgendes Problem bzw. Frage. Ich habe vor das beim Start meiner Software einen vierstelligen Pin abgefragt wird. Wenn das Programm zu lange ohne Reaktion ist soll ein Fenster aufgehen wo man den Pin wieder eingeben muss. Wenn man den Pin vergessen hat soll man auf einen Knopf drücken der dann die erste und letzte Zahl anzeigt und die Zahlen in der Mitte sollen mit Punkten versteckt sein. Könnte mir da jemand einen Anhaltspunkt geben was ich googlen müsste oder einen Tipp wie das gemacht werden könnte?
Danke
Luki :)

Klaus01 8. Jan 2014 15:58

AW: 4- Stelliger Integer
 
Hallo,

anzeigen lassen kannst Du nur Strings.

Du musst Deine Pin (Integer) mit IntToStr in einen String wandeln.
Mit s[2]:= '.' kannst Du das zweite Zeichen des PIN mit einem '.' überschreiben.

Grüße
Klaus

BUG 8. Jan 2014 16:03

AW: 4- Stelliger Integer
 
Zitat:

Zitat von Luki206 (Beitrag 1242710)
Wenn man den Pin vergessen hat soll man auf einen Knopf drücken der dann die erste und letzte Zahl anzeigt und die Zahlen in der Mitte sollen mit Punkten versteckt sein.

Du willst also eine PIN benutzen, die effektiv nur 2 Stellen lang ist.
Die hundert verschiedenen PINs kann man ja sogar per Hand durchprobieren :mrgreen:

Abgesehen davon hast du 3 Teilprobleme:
  • Finde heraus wie man Inaktivität feststellt (z.B. mit einem Timer und Delphi-Referenz durchsuchenGetLastInputInfo).
  • Finde heraus wie man einen eine PIN- bzw. Passwort-Abfrage programmiert.
  • Finde heraus, wie man zwei Stellen in einem String (siehe #2) ersetzt und diesen dann anzeigt.

Luki206 8. Jan 2014 16:07

AW: 4- Stelliger Integer
 
Das mit den drei Problemen ist nicht das wilde da ich es schon habe ;) ich habe nur einen Weg gesucht wie man das Anzeigen könnte. Aber Danke :)

Bummi 8. Jan 2014 16:15

AW: 4- Stelliger Integer
 
Wenn Du ein Maskedit verwenden möchtest könntest Du die EditMask mit "escapten" Zahlen für erste und vierte Stelle nehmen, so dass nur noch die zwei fehlenden Zahlen eingegeben werden können/müssen.

Delphi-Quellcode:
Const
 C_MASK='\999\9;0;.';
var
 Mask, PinStr:String;
 Pin:Integer;
begin
 Pin := Random(9000) + 1000;

 PinStr := IntToStr(Pin);
 if length(PinStr)=4 then
    begin
       Mask := C_MASK;
       Mask[2] := PinStr[1];
       Mask[6] := PinStr[4];
    end;
 MaskEdit1.Text := '';
 MaskEdit1.EditMask := Mask;
end;

Namenloser 8. Jan 2014 16:17

AW: 4- Stelliger Integer
 
Zitat:

Zitat von BUG (Beitrag 1242712)
Zitat:

Zitat von Luki206 (Beitrag 1242710)
Wenn man den Pin vergessen hat soll man auf einen Knopf drücken der dann die erste und letzte Zahl anzeigt und die Zahlen in der Mitte sollen mit Punkten versteckt sein.

Du willst also eine PIN benutzen, die effektiv nur 2 Stellen lang ist.
Die hundert verschiedenen PINs kann man ja sogar per Hand durchprobieren :mrgreen:

Wie wäre es zusätzlich noch mit einem Publikums- und einem Telefonjoker?


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:40 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz