![]() |
If - Abfrage variabel gestalten ?
Hallo zusammen,
Ich möchte das Gleichheitszeichen gegen eine Variabel austauschen. Nur wie mache ich das ?
Delphi-Quellcode:
quasi irgendwie so:
If Test = 1 then
begin ... end;
Delphi-Quellcode:
Gruss
Variabel := '=';
If Test Variabel 1 then begin ... end; Holger |
Re: If - Abfrage variabel gestalten ?
Was mir dazu einfällt : Prozeduraler Parameter :
Delphi-Quellcode:
TVergleich : Function(A,B : Integer) : Boolean;
Function Groesser(A,B : Integer) : Boolean; begin Result := A > B; end; Function Kleiner(A,B : Integer) : Boolean; begin Result := A < B; end; .... var VergleichFunc : TVergleich; begin VergleichFunc := Groesser; if VergleichFunc(a,b) then begin |
Re: If - Abfrage variabel gestalten ?
Keine Ahnung ob das funktioniert.
Alternativ wäre sowas möglich:
Delphi-Quellcode:
case AbfrageTyp of
0: if Test = 1 then ... 1: if Test <> 1 then ... 2: if Test > 1 then ... 3: if Test < 1 then ... end; |
Re: If - Abfrage variabel gestalten ?
Hallo Holger,
auf den ersten Blick ist Deine Anforderung nicht sehr intelligent, aber ich vermute Du hast Dir etwas dabei gedacht, darum kein Verweis auf case/</>...... Dunkel kann ich mich erinnern das zu TP-Zeiten schon einmal jemand dieses Ansinnen hatte und das wurde dann mit einer Vergleichsfunktion gelöst. etwa so:
Delphi-Quellcode:
Gruß
if VERGLEICHE(a,b).....
function VERGLEICHE (Wert1,Wert2); begin if regewetter then if wert1=wert2 then result:=true; if Schnee then if wert1<>Wert2 then result:=true; ...... end; K-H |
Re: If - Abfrage variabel gestalten ?
Zitat:
Delphi-Quellcode:
if VERGLEICHE(a,b).....
function VERGLEICHE (Wert1,Wert2); begin if regewetter then result := wert1=wert2; if Schnee then result := wert1<>Wert2; ...... end; |
Re: If - Abfrage variabel gestalten ?
@Divby0
geschenkt! Noch wissen wir ja nicht was er wirklich will. Gruß K-H |
Re: If - Abfrage variabel gestalten ?
Jo stimmt. :cheers:
|
Re: If - Abfrage variabel gestalten ?
Zitat:
Delphi-Quellcode:
stilgerechter ist als
result := wert1=wert2;
Delphi-Quellcode:
Da das allgemeingültig ist, sehe ich das trotz des OT hier gut aufgehoben.
if wert1=wert2 then result:=true;
Im Endeffekt wird wohl alles auf so eine Vergleichsfunktion hinauslaufen. |
Re: If - Abfrage variabel gestalten ?
Zur Erklärung.
Ein und die selbe Procedure wird von zwei Buttons aus gestartet. Wenn Sie von Button1 aus aktiviert wird, soll nach "=" abgefragt werden und wenn aus Button2 gestartet wird soll nach "<>" abgefragt werden. Es handelt sich um das zweite Abfragekennzeichen bei 'RW_VERSCHROTTUNG'. Die Abfrage sieht so aus:
Delphi-Quellcode:
Ich dachte mir das ich vor der Abfrage einfach folgendes mache:
If (DM_Geraete.Query1['RW_NUMMER'] <> Null) AND (DM_Geraete.Query1['RW_VERSCHROTTUNG'] = Null) then
begin end;
Delphi-Quellcode:
Nur geht das nicht.
With Sender as TBitBtn do
begin If Name = 'BitBtn1' then Kennzeichen := '='; If Name = 'BitBtn2' then Kennzeichen := '<>'; end; If (DM_Geraete.Query1['RW_NUMMER'] <> Null) AND (DM_Geraete.Query1['RW_VERSCHROTTUNG'] Kennzeichen Null) then begin end; Gruss Holger |
Re: If - Abfrage variabel gestalten ?
Das ist aber kein Problem. Definiere ein lokale Variable und schreibe für den einen Button eine 1 und für den anderen eine 2 und übergibt dies deiner Prozedur oder du übergibts der Prozedur gleich den Sender und wertest intern aus.
Delphi-Quellcode:
If Sender = BitBtn1 then...
If Sender = BitBtn2 then... Edit: Natürlich ohne ''. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:32 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 by Thomas Breitkreuz