Registriert seit: 20. Aug 2010
10 Beiträge
|
AW: Eingabebedingungen
26. Aug 2010, 12:28
Hey danke für deine Hilfe aber es funktioniert immer noch nicht !! 0,1 und 2 lassen sich eingeben aber immer noch nicht die 3.
Hast du noch eine Idee wie es klappen könnte?
Ich häng mal den Quellcode ran, vielleicht ist da ja ein Fehler..
Delphi-Quellcode:
procedure TForm1.EditISOCodeKeyPress(Sender: TObject; var Key: Char);
begin
if not(key in [#8,'1'..'4','A'..'H','K'..'N','P']) and
(EditISOCode.SelStart =0) then
begin
Key:= #0; // Ignoriert die Tastatureingabe
StatusBar.SimpleText:= 'An der ersten Stelle des ISOCodes kann nur 1, 2, 3, 4, A,B,C,D,E,F,G,H,K,L,M,N oder P stehen.';
end
else
//2.Zeichen
if not (key in [#8, '0','2','5','6','8','C'..'F','L'..'N','P']) and
(EditISOCode.SelStart =1) then
begin
Key:= #0; // Ignoriert die Tastatureingabe
StatusBar.SimpleText:= 'An der zweiten Stelle des ISOCodes kann nur 0,2,5,6,8,C,D,E,F,L,M,N oder P stehen.';
end
else
//3. Zeichen
if not (key in [#8,'G','V','R','H','U','T','B','P','S']) and
(EditISOCode.SelStart = 2) then
begin
Key:= #0;
Statusbar.SimpleText:= 'An der dritten Stelle des ISOCodes kann nur G,V,R,H,T,B,P,S stehen.' ;
end
else
//4.Zeichen
if not (key in [#8,'0'..'9']) and
(EditISOCode.SelStart =3) then
begin
Key:= #0;
// Statusbar.SimpleText:='An der vierten Stelle des ISOCodes kann nur 1,2,3,4,5,6,7,8 und 9.';
end;
//Bedingung vom 3. zum 4. Zeichen (z.B. G nur mit 0,1,2,3 kombinierbar)
if (key in ['G']) and
(EditISOCode.SelStart = 2) then
begin
Statusbar.SimpleText := 'Mit G können Sie nur die Zahlen 0,1,2 und 3 kombinieren, sonst ungültige Containerbezeichnung!';
end;
if not (key in [#8,'0'..'3']) and
(EditISOCode.SelStart =3) then
begin
Key:= #0;
end;
if (key in ['V']) and
(EditISOCode.SelStart = 2) then
begin
Statusbar.SimpleText := 'Mit V können Sie nur die Zahlen 0,2 und 4 kombinieren, sonst ungültige Containerbezeichnung!';
end;
if not (key in [#8,'0'..'2','4']) and
(EditISOCode.SelStart =3) then
begin
Key:= #0;
end;
if (key in ['R']) and
(EditISOCode.SelStart = 2) then
begin
Statusbar.SimpleText := 'Mit R können Sie nur die Zahlen 0,1,2 und 3 kombinieren, sonst ungültige Containerbezeichnung!';
end;
if not (key in [#8,'0'..'3']) and
(EditISOCode.SelStart =3) then
begin
Key:= #0;
end;
if (key in ['H']) and
(EditISOCode.SelStart = 2) then
begin
Statusbar.SimpleText := 'Mit H können Sie nur die Zahlen 0,1,2,3 und 4 kombinieren, sonst ungültige Containerbezeichnung!';
end;
if not (key in [#8,'0'..'4']) and
(EditISOCode.SelStart =3) then
begin
Key:= #0;
end;
if (key in ['U']) and
(EditISOCode.SelStart = 2) then
begin
Statusbar.SimpleText := 'Mit U können Sie nur die Zahlen 0,1,2,3,4 und 5 kombinieren, sonst ungültige Containerbezeichnung!';
end;
if not (key in [#8,'0'..'5']) and
(EditISOCode.SelStart =3) then
begin
Key:= #0;
end;
if (key in ['T']) and
(EditISOCode.SelStart = 2) then
begin
Statusbar.SimpleText := 'Mit T können Sie nur die Zahlen 0,1,2,3,4,5,6,7,8 und 9 kombinieren, sonst ungültige Containerbezeichnung!';
end;
if not (key in [#8,'0'..'9']) and
(EditISOCode.SelStart =3) then
begin
Key:= #0;
end;
if (key in ['B']) and
(EditISOCode.SelStart =2) then
begin
Statusbar.SimpleText := 'Mit B können Sie nur die Zahlen 0,1,3,4,5 und 6 kombinieren, sonst ungültige Containerbezeichnung!';
end;
if not (key in [#8,'0'..'6']) and
(EditISOCode.SelStart =3) then
begin
Key:= #0;
end;
if (key in ['P']) and
(EditISOCode.SelStart =2) then
begin
Statusbar.SimpleText := 'Mit P können Sie nur die Zahlen 0,1,2,3,4 und 5 kombinieren, sonst ungültige Containerbezeichnung!';
end;
if not (key in [#8,'0'..'5']) and
(EditISOCode.SelStart =3) then
begin
Key:= #0;
end;
if (key in ['S']) and
(EditISOCode.SelStart = 2) then
begin
Statusbar.SimpleText := 'Mit S können Sie nur die Zahlen 0,1 und 2 kombinieren, sonst ungültige Containerbezeichnung!';
end;
if not (key in [#8,'0'..'2']) and
(EditISOCode.SelStart =3) then
begin
Key:= #0;
end;
|