AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

fehler bei if-then

Ein Thema von mr-unbekannt · begonnen am 14. Dez 2005 · letzter Beitrag vom 14. Dez 2005
Antwort Antwort
mr-unbekannt

Registriert seit: 29. Okt 2005
Ort: tirol
104 Beiträge
 
Delphi 7 Personal
 
#1

fehler bei if-then

  Alt 14. Dez 2005, 16:17
hello

wenn ich bei den edit felder weniger zeichen als 38 eingebe, dann kommt das Fenster Couldnot login
UND danach auch noch das User successfully logged in fenster, somit speichert es mir die textdatei ab, obwohl ich weniger zeichen als 38 eingegeben habe...fehler?wo?

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var a,b,c,d,e: String;

begin
 a:=Combobox1.Text;
 b:=Combobox2.Text;
 c:=Edit1.Text;
 d:=Edit2.Text;
 e:=Combobox3.Text;

if length(Combobox1.Text)+length(Combobox2.Text) + length(Edit1.Text)
+ length(Edit2.Text) + length(Combobox3.Text) < 39
then ShowMessage('Could not login!')
else
ListBox1.Items.Add(Combobox1.text);
ListBox1.Items.Add(Combobox2.text);
ListBox1.Items.Add(Edit1.text);
ListBox1.Items.Add(Edit2.text);
ListBox1.Items.Add(Combobox3.text);
ListBox1.Items.SaveToFile('C:\\data.txt');
ShowMessage('User successfully logged in!');
Close;
end;


procedure TForm1.FormCreate(Sender: TObject);
begin
if fileexists('C:\\data.txt') then ListBox1.Items.LoadFromFile('C:\\data.txt');

end;
  Mit Zitat antworten Zitat
Benutzerbild von Binärbaum
Binärbaum

Registriert seit: 19. Jan 2005
Ort: Elstra
764 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: fehler bei if-then

  Alt 14. Dez 2005, 16:30
Der Fehler liegt wohl im Quelltext, da fehlt ein begin und ein end für den Else-Zweig des if. (Ich gehe mal davon aus, dass bei else nicht nur die eine nachfolgende Anweisung erldigt werden soll, sondern alle Listbox1. ...-Anweisungen.)

MfG
Binärbaum
There are exactly 10 kinds of people: those who understand binary, and those who don't.
---
"Software reift beim Kunden. Bei Hardware ist es anders: Hardware fault beim Kunden." - Rainer G. Spallek
  Mit Zitat antworten Zitat
mr-unbekannt

Registriert seit: 29. Okt 2005
Ort: tirol
104 Beiträge
 
Delphi 7 Personal
 
#3

Re: fehler bei if-then

  Alt 14. Dez 2005, 16:35
oh danke, ich hab garnicht gewusst, dass man bei dem else zweig eigens begin + end schreiben muss

=> i am newbe

danke
  Mit Zitat antworten Zitat
Benutzerbild von zecke
zecke

Registriert seit: 17. Jan 2004
494 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: fehler bei if-then

  Alt 14. Dez 2005, 16:35


Außerdem musst (bin mir plötzlich unsicher und sage lieber solltest zwecks übersichtlichkeit ) du die einzelnen Argumente die If [hier] then stehen in Klammern packen wenn du mehrere Operatoren verwendest.

mfg zecke
  Mit Zitat antworten Zitat
Benutzerbild von Binärbaum
Binärbaum

Registriert seit: 19. Jan 2005
Ort: Elstra
764 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: fehler bei if-then

  Alt 14. Dez 2005, 16:39
Zitat von mr-unbekannt:
oh danke, ich hab garnicht gewusst, dass man bei dem else zweig eigens begin + end schreiben muss
Das ist jedoch nur nötig, wenn im else-Zweig mehr als eine Anweisung stehen soll. Ohne begin-end wird einfach nur die nächste Anweisung nach dem else auch noch im else-Zweig abgearbeitet.

MfG
Binärbaum
There are exactly 10 kinds of people: those who understand binary, and those who don't.
---
"Software reift beim Kunden. Bei Hardware ist es anders: Hardware fault beim Kunden." - Rainer G. Spallek
  Mit Zitat antworten Zitat
mr-unbekannt

Registriert seit: 29. Okt 2005
Ort: tirol
104 Beiträge
 
Delphi 7 Personal
 
#6

Re: fehler bei if-then

  Alt 14. Dez 2005, 16:41
wenn ich das mache steht 'inkompatible typen'....
  Mit Zitat antworten Zitat
Benutzerbild von zecke
zecke

Registriert seit: 17. Jan 2004
494 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: fehler bei if-then

  Alt 14. Dez 2005, 16:42
Wo kommt denn die Meldung? Wenn Du was genau machst?
mfg zecke
  Mit Zitat antworten Zitat
Benutzerbild von Binärbaum
Binärbaum

Registriert seit: 19. Jan 2005
Ort: Elstra
764 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: fehler bei if-then

  Alt 14. Dez 2005, 17:05
Zitat von zecke:
Wo kommt denn die Meldung? Wenn Du was genau machst?
Ich schätze mal in der if-Anweisung, genauer gesagt bei der Bedingung, kommt der Fehler, falls man falsch klammert. Wenn das nicht stimmt, kann mr-unbekannt (seltsamer Name ) ja nochmal sagen, wo genau der Fehler auftritt.

Der Abschnitt
Delphi-Quellcode:
if length(Combobox1.Text)+length(Combobox2.Text) + length(Edit1.Text)
+ length(Edit2.Text) + length(Combobox3.Text) < 39
then
wäre mit Klammerung folgendes:
Delphi-Quellcode:
if ((length(Combobox1.Text)+length(Combobox2.Text) + length(Edit1.Text)
+ length(Edit2.Text) + length(Combobox3.Text)) < 39)
then
MfG
Binärbaum
There are exactly 10 kinds of people: those who understand binary, and those who don't.
---
"Software reift beim Kunden. Bei Hardware ist es anders: Hardware fault beim Kunden." - Rainer G. Spallek
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 12:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2020 by Daniel R. Wolf