Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi If erstens Or zweitens Problem (https://www.delphipraxis.net/114624-if-erstens-zweitens-problem.html)

xShadowBoZz 28. Mai 2008 13:30


If erstens Or zweitens Problem
 
so habe folgendes Problem momentan.
Ich habe in meinem Program eine "Search" funktion eingebaut.
Jetzt will ich das nach "Edit1.Text" gesucht wird wenn "ListBox1.Visible" oder "listbox2.visible".

Habe es hiermit Probiert allerdings funktioniert es nicht.

Delphi-Quellcode:
If Form2.ListBox1.Visible=True or Form2.ListBox2.Visible=True then
alles ohne Fehler und Errors compilierbar.

mit
Delphi-Quellcode:
If Form2.ListBox1.Visible=True (or Form2.ListBox2.Visible=True) then
kommt ein Error:
"Operator oder Semikolon fehlt"

Kann mir da jemand helfen mehrere "Bedingungen" in eine If-Abfrage "reinzustecken"?

thx im vorraus

s-off 28. Mai 2008 13:34

Re: If erstens Or zweitens Problem
 
Delphi-Quellcode:
If ((Form2.ListBox1.Visible) or (Form2.ListBox2.Visible)) and bSchoenesWetter then
trifft zu, wenn Schönes Wetter ist und eine der beiden ListBoxen sichtbar.

Und lass das = True bei Prüfen einer If-Bedingung weg!

DeddyH 28. Mai 2008 13:36

Re: If erstens Or zweitens Problem
 
Wenn Du die Prüfung auf true weglässt, kannst Du auch die Klammern weglassen.

s-off 28. Mai 2008 13:38

Re: If erstens Or zweitens Problem
 
Zitat:

Zitat von DeddyH
Wenn Du die Prüfung auf true weglässt, kannst Du auch die Klammern weglassen.

Ich würde trotzdem klammern.

Erstens erhöht es die Lesbarkeit und zweitens wird es dadurch leichter, wenn Du Dich mit anderen Sprachen beschäftigst, bei denen schon ein Ausdruck geklammert werden muss; z.B. C#.

Prüfung auf True oder False lässt man generell weg!

ToFaceTeKilla 28. Mai 2008 13:39

Re: If erstens Or zweitens Problem
 
Zitat:

Zitat von s-off
Und lass das = True bei Prüfen einer If-Bedingung weg!

Ich glaub, was s-off meint, ist, dass Boolean-Variablen/-Ausdrücke nicht auf true überprüft werden müssen, sondern wenn dann auf false.
Delphi-Quellcode:
if visible then
für true

Delphi-Quellcode:
if visible = false then
für false

EDIT: warer schneller...

Larsi 28. Mai 2008 13:40

Re: If erstens Or zweitens Problem
 
Zitat:

Zitat von s-off
Delphi-Quellcode:
If ((Form2.ListBox1.Visible) or (Form2.ListBox2.Visible)) and bSchoenesWetter then
trifft zu, wenn Schönes Wetter ist und eine der beiden ListBoxen sichtbar.

Und lass das = True bei Prüfen einer If-Bedingung weg!


[OT] Die Bedingung wird zumindest bei mir nie zutreffen :) [OT]

s-off 28. Mai 2008 13:42

Re: If erstens Or zweitens Problem
 
[OT]
Zitat:

Zitat von Larsi
Zitat:

Zitat von s-off
trifft zu, wenn Schönes Wetter ist und eine der beiden ListBoxen sichtbar.

[OT] Die Bedingung wird zumindest bei mir nie zutreffen :) [OT]

Wegen des Wetters?
[/OT]

Sherlock 28. Mai 2008 13:42

Re: If erstens Or zweitens Problem
 
Zitat:

Zitat von ToFaceTeKilla
Zitat:

Zitat von s-off
Und lass das = True bei Prüfen einer If-Bedingung weg!

Ich glaub, was s-off meint, ist, dass Boolean-Variablen/-Ausdrücke nicht auf true überprüft werden müssen, sondern wenn dann auf false.
Delphi-Quellcode:
if visible then
für true

Delphi-Quellcode:
if visible = false then
für false

EDIT: warer schneller...

Was ist gegen ein
Delphi-Quellcode:
if not visible then
einzuwenden?

Sherlock

s-off 28. Mai 2008 13:43

Re: If erstens Or zweitens Problem
 
Zitat:

Zitat von Sherlock
Was ist gegen ein
Delphi-Quellcode:
if not visible then
einzuwenden?

Nichts.

ToFaceTeKilla 28. Mai 2008 13:44

Re: If erstens Or zweitens Problem
 
Zitat:

Was ist gegen ein
Delphi-Quellcode:
if not visible then
einzuwenden?

Sherlock
Ok das hab ich nich mit in Betracht gezogen. Is natürlich eleganter :stupid:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:09 Uhr.
Seite 1 von 2  1 2      

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