Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   erweiterte IF - Bedingung (https://www.delphipraxis.net/184659-erweiterte-if-bedingung.html)

MasterDoge 13. Apr 2015 11:24

AW: erweiterte IF - Bedingung
 
Also: Ich habe in der Schule das Fach Informatik seit einem drei viertel Jahr.
Wir haben über die Osterferien die Aufgabenstellung erhalten, irgendetwas zu programmieren.
Ich bin auf die Idee gekommen, einen Vertretungsplan zu erstellen, welcher nicht für die Schule an sich geeignet ist, sondern einfach eine gute Note gibt, da dieses Projekt ein bisschen umfangreicher ist. Ich habe mit einer Anmeldeform angefangen, welche sich nach richtiger Benutzer - und Passworteingabe entweder in die (neue) Form 2 des Schülers oder in die Form 3 des Sekretariats übergeht:
Code:
procedure TForm1.Button1Click(Sender: TObject);
begin

  if (edit1.text='Sekretariat') or (edit1.text='sekretariat') and (edit2.text='123')
  then begin
  form2.show;
  form1.hide;
  end;
  if (edit1.text='Schüler') or (edit1.text='schüler') and (edit2.text='456')
  then begin
  form3.show;
  form1.hide;
  end;
Das eigentliche Problem, dass sich mir dann gestellt hast, ist dass ich versucht hatte, eine Nachicht anzeigen zu lassen, wenn der Nutzername, oder das Passwort falsch ist.

Delbor 13. Apr 2015 11:25

AW: erweiterte IF - Bedingung
 
Hi zusammen

Zitat:

Wenn der TE das dann mal anpasst, dann könnte er seinen Units, Forms und Komponenten auch gleich ein paar sprechende Bezeichner verpassen.
Au ja!! Und nicht mehr die Textinhalte der Edits direkt vergleichen, sondern diese in Variablen schreiben und diese dann verwenden.
In einem Record könnten die Inhalte der Edits abgelegt werden. Da unbekannt ist, was der TE damit genau festhält/vergleichen will, verzichte ich hier allerdings - auch zur Verdeutlichung - auf sprechende Namen.

Delphi-Quellcode:
MemberRecord = record
  Edit1Text: String;
  Edit2Text :String;
Nun kann geprüft werden, ob die Felder den richtigen Inhalt haben.
Delphi-Quellcode:
begin
  if MemberRecord.Edit1Text = AnsiLowerCase('Sekretariat') then begin
    if MemberRecord.Edit2Text <> 'Faldera123' then
      ShowMessage('Falsch');
  end;

  if MemberRecord.Edit1Text = AnsiLowerCase('Schüler') then begin
    if MemberRecord.Edit2Text <> 'Klasse123' then
      ShowMessage('Falsch');
  end
end;
Es scheint mir hier allerdings um 'Benutzer' einer Schule zu gehen - und die sind entweder Schüler oder Angestellte. Von daher müsste das wohl nochmal anders gelöst werden, zB. mit einer Klasse TSchulhausMembers...

Gruss
Delbor

BadenPower 13. Apr 2015 11:27

AW: erweiterte IF - Bedingung
 
Zitat:

Zitat von Jumpy (Beitrag 1297456)
Hoffentlich hab ich jetzt keinen Rechtschreibfehler in meinem besserwisserischen Beitrag hier. :-D

Rechtschreibfehler habe ich in Deinem Beitrag jetzt keine gesucht, aber eine Leseschwäche gefunden.:-D

Aber das von Dir Bemängelte steht schon in #15.

BadenPower 13. Apr 2015 11:31

AW: erweiterte IF - Bedingung
 
Zitat:

Zitat von MasterDoge (Beitrag 1297459)
Das eigentliche Problem, dass sich mir dann gestellt hast, ist dass ich versucht hatte, eine Nachicht anzeigen zu lassen, wenn der Nutzername, oder das Passwort falsch ist.

Dann sollten die Vorschläge #15 oder besser #16 für Dich das Richtige sein.

MasterDoge 13. Apr 2015 12:57

AW: erweiterte IF - Bedingung
 
Jap, du hattest Recht, es funktioniert. Danke :D :thumb:
Liebe Grüße, Tilman


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:49 Uhr.
Seite 3 von 3     123   

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