Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi if then Fehler (https://www.delphipraxis.net/77189-if-then-fehler.html)

Basti552 15. Sep 2006 21:07


if then Fehler
 
:?: Hallo, udn gute Nacht.

Ich habe leider ein if then Problem :oops: (Ich hab wirklich F1 gedrückt!!!)
Jetzt kommt zwar viel ich sollte erstmal die Grundarten beherrschen und mehr suchen (ich hab wirklich gesucht aber ned gefunden) aber bitte helft mir!:)

Delphi-Quellcode:
if Panel1.Caption = '......... 30' then
    Label5.Caption := '.....................!';
  if Panel1.Caption := '......... 17' then
    Label5.Caption := ' ........!';
(sry ich wollte nicht den Orginaltext zeigen!)

und dann kommt die Fehlermeldung: Ausdruckstyp muss BOOLEAN sein!

sry nochma aber bitte helft mir thx

Gruß
Basti552 :)

mkinzler 15. Sep 2006 21:08

Re: if then Fehler
 
Delphi-Quellcode:
if Panel1.Caption = '......... 17' then
dann sollte es gehen.

Dax 15. Sep 2006 21:08

Re: if then Fehler
 
Delphi-Quellcode:
if Panel1.Caption = '......... 30' then
    Label5.Caption := '.....................!';
  if Panel1.Caption = {nicht :=!} '......... 17' then
    Label5.Caption := ' ........!';

Basti552 15. Sep 2006 21:09

Re: if then Fehler
 
Zitat:

Zitat von mkinzler
Delphi-Quellcode:
if Panel1.Caption = '......... 17' then
dann sollte es gehen.

jap thx hat sich erledigt!:)

Basti552 15. Sep 2006 21:21

Re: if then Fehler
 
Anscheinend ist noch ein Fehler da:

Wenn ich nun die Anwendung starte, kommt folgendes Problem:

Ich kann das erste if then ausführen also da steht dann in einem Label:
'...'
Aber wenn ich dann das 2. mach auf das selbe Label programmiert, dann bleibt nur der alte Text da!

Bitte nochma hilfe, thx!

Delphi-Quellcode:
 if Panel1.Caption = '... 30' then
    Label5.Caption := '....';
  if Panel1.Caption = '.... 17' then
    Label5.Caption := '.....';

mkinzler 15. Sep 2006 21:24

Re: if then Fehler
 
Ich versteh dich nicht so ganz Panel11.Caption kann entweder '... 30' oder '... 18' sein.
.Update?

markusj 15. Sep 2006 21:25

Re: if then Fehler
 
Mal einige Grundlagen^^

Vergleichsoperatoren:

=
>
<
>=
<=
<>

ergeben einen booleschen Ausdruck.

Logische Operatoren:

and
or
not
xor

ergeben bei zwei gleichen Eingabewerten den selben Typ

Zuweisungsoperator:

:=

So, und hast du dir jetzt schon ein Buch gekauft?

mfG

Markus

//Roter Kasten:

Ich verstehe dein Problem nicht ganz, aber mal so am Rande ... du hast keine verschachtelten ifs, das ist dir klar, oder?
Und normalerweise kann man bei einem Panel im Betrieb die Caption nicht ändern, oder irre ich mich da?

Basti552 15. Sep 2006 21:28

Re: if then Fehler
 
mmh also das Problem ist das wenn ich auf einen Button drücke in einem Label der gewünschte Text nicht erscheint. Dieser Text war so 'Vereinbart':

Delphi-Quellcode:
if Panel1.Caption = '........3' then
    Label5.Caption := '.......2!';
  if Panel1.Caption = '......4' then
    Label5.Caption := '....5';
übrigens: die ..... sind nur da weil ich nicht will das jeder weiß was da steht udn die Ziffern sind nur dazu da dass man weiß dass da was unterschiedliches steht!;)

Basti552 15. Sep 2006 21:32

Re: if then Fehler
 
Zitat:

Zitat von markusj
So, und hast du dir jetzt schon ein Buch gekauft?

mfG

Markus

//Roter Kasten:

Ich verstehe dein Problem nicht ganz, aber mal so am Rande ... du hast keine verschachtelten ifs, das ist dir klar, oder?
Und normalerweise kann man bei einem Panel im Betrieb die Caption nicht ändern, oder irre ich mich da?

Ich hab sogar 3 Bücher^^

markusj 15. Sep 2006 21:39

Re: if then Fehler
 
Zitat:

Zitat von Basti552
übrigens: die ..... sind nur da weil ich nicht will das jeder weiß was da steht udn die Ziffern sind nur dazu da dass man weiß dass da was unterschiedliches steht!;)

huhu, jetzt werden wir geheimnistuerisch^^. Egal.
Du prüfst auf Werte der Caption eines Panels.
AFAIK lässt sich diese Caption nicht vom User bearbeiten, d.H. du musst sie selbst setzen.
Dementsprechend würde ich kontrollieren, ob die Caption des Panels überhaupt richtig gesetzt wird.
Und noch was: wenn du in die If-Abfrage noch ein showmessage('a'); bzw. 'b' der so reinmachst, siehst du, welches if gewählt wurde.


Delphi-Quellcode:
if Panel1.Caption = '........3' then
    begin
    Label5.Caption := '.......2!';
    showmessage('variante1');
    end;
  if Panel1.Caption = '......4' then
    begin
    Label5.Caption := '....5';
    showmessage('variante2');
    end;
Mit dem showmessage kann man im laufenden Betrieb leicht kontrollieren, ob das Programm gewisse Dinge macht, oder ob es darüber springt. Profis nehmen dazu übrigens Assertions, aber das ist nur _sehr_ optional.

mfg

Markus

EDIT: Noch was ... du kannst Beiträge auch Editieren, dann musst du nicht nen neuen aufmachen, wenn du nur einen Satz schreiben willst und noch niemand geantwortet hat.
Und ich würde die Bücher zuerst einmal durcharbeiten, bevor ich mich an eigene Projekte wage.

Basti552 15. Sep 2006 21:45

Re: if then Fehler
 
na ja leider steht es jetzt immer noch nicht da!:(

mkinzler 15. Sep 2006 21:47

Re: if then Fehler
 
Rufst du den Code mwhrmal auf?

markusj 15. Sep 2006 21:49

Re: if then Fehler
 
Was für ne Meldung erhältst du denn?
Das showmessage-Kommando soll dir, wenn der erste Fall Eintritt, variante1 in einer Nachrichtenbox anzeigen, analog dazu bei der zweiten Bedingung mit variante2 als Text.

mfG

Markus

Basti552 15. Sep 2006 21:49

Re: if then Fehler
 
Zitat:

Zitat von mkinzler
Rufst du den Code mwhrmal auf?

sry ich hab keine Ahnung was das ist, aber ich würd ma sagen nein wenn ich schon nicht weiß was es ist!:)

Basti552 15. Sep 2006 21:50

Re: if then Fehler
 
Zitat:

Zitat von markusj
Was für ne Meldung erhältst du denn?
Das showmessage-Kommando soll dir, wenn der erste Fall Eintritt, variante1 in einer Nachrichtenbox anzeigen, analog dazu bei der zweiten Bedingung mit variante2 als Text.

mfG

Markus

Überschrift: Klasse...
Feld: variante 2 aber schon beim ersten!^^

Edit: Also es hat sich jetzt rausgestellt das alles funktioniert nur die 3.Variante ned^^

mkinzler 15. Sep 2006 21:51

Re: if then Fehler
 
War ein Tippfehler sollte mehrmals heißen. Pro durchlauf kann ja nur eine Bedingung der If-Anweisungen zutreffen.

Basti552 15. Sep 2006 21:53

Re: if then Fehler
 
es geht jetzt danke der Variante! thx!

markusj 15. Sep 2006 21:55

Re: if then Fehler
 
Dann hast du schon im ersten Fall deinen Paneltext so stehen, dass er die Bedingung erfüllt.
VERDAMMT, ICH HAB KEINE GLASKUGEL!
Jetzt erklär mir mal, wie der Text in das Panel kommt? Setzt du den im OI? Oder greifst du auf ihn zu?
Dann kontrolliere mal, wie auf den Text zugeriffen wird, gehe alles durch, was auf dieses Panel schreibt.
Geh mal im Debug-Modus Schritt für Schritt dein Programm durch und verfolge, ob der Code das macht was er soll.

mfG

Markus *leicht genervt*

//ROT:

Schön dass es geht, aber ich schreibe den Text trotzdem rein, vielleicht lernst du was in Punkto Fehlersuche.
Und merke dir nochwas: Du solltes lieber etwas _mehr_ als etwas weniger Source Posten, wenn du hilfe willst.

dino 15. Sep 2006 22:05

Re: if then Fehler
 
basti schau mal in dein Postfach


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:53 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