AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein If Abfrage mit or und and kombinieren
Thema durchsuchen
Ansicht
Themen-Optionen

If Abfrage mit or und and kombinieren

Ein Thema von Luckner · begonnen am 4. Mär 2016 · letzter Beitrag vom 7. Mär 2016
Antwort Antwort
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#1

AW: If Abfrage mit or und and kombinieren

  Alt 4. Mär 2016, 17:39
Hallo,

Delphi-Quellcode:
if ((JvComboMaschine2.Text = 'TT') or (JvComboMaschine2.Text = 'TT / Cutter') or (JvComboMaschine2.Text = 'TT600') or (JvComboMaschine2.Text = 'Laser') or (JvComboMaschine2.Text = 'Memjet') or (JvComboMaschine2.Text = 'Primera')) and (JvEditRohwareNr.Text = '') then
     begin
       Messagedlg('Rohwaren-Nr. eintragen!', mtwarning, [mbok], 0);
       JvEditRohwareNr.SetFocus;
     end
 else
    begin
      PanelSpeichern.Visible := True;
      JvHTButtonspeichernOK.SetFocus;
    end;
bist du dir sicher, dass der Code nicht funktioniert?

Vielleicht noch
and (trim(JvEditRohwareNr.Text) = '') then um die Eingabe von nur Leerzeichen auch als leere Eingabe anzusehen
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.268 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: If Abfrage mit or und and kombinieren

  Alt 4. Mär 2016, 22:48
Wie wäre es damit?

Delphi-Quellcode:
    
  if MatchText(JvComboMaschine2.Text, ['TT', 'TT / Cutter', 'TT600', 'Laser', 'Primera']) and (JvEditRohwareNr.Text = '') then
      begin
        Messagedlg('Rohwaren-Nr. eintragen!', mtwarning, [mbok], 0);
        JvEditRohwareNr.SetFocus;
      end
    else
      begin
        PanelSpeichern.Visible := True;
        JvHTButtonspeichernOK.SetFocus;
      end;
Gerd
Kölner Delphi Usergroup: http://wiki.delphitreff.de
  Mit Zitat antworten Zitat
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: If Abfrage mit or und and kombinieren

  Alt 6. Mär 2016, 16:27
Hallo Bernau,
diese Funktion kannte ich bis heute nicht, aber sie sieht elegant aus für mein Problem. Werde es gleich ausprobieren.

Danke!
Luckner
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#4

AW: If Abfrage mit or und and kombinieren

  Alt 6. Mär 2016, 18:00
Mein Delphi 7 kennt Matchtext nicht.

Wäre dashier eventuell ein Lösungsansatz (nur ungetestet so hingedaddelt)?
Delphi-Quellcode:
procedure TForm1.irgendwas;
var
  sl : TStringList;
begin
  sl := TStringList.Create;
  // Dashier eventuell aus einer Datei laden, damit bei Änderungen in der Liste
  // das Programm nicht geändert werden muss.
  sl.Add('TT');
  sl.Add('TT / Cutter');
  sl.Add('TT600');
  sl.Add('Laser');
  sl.Add('Primera');
  if (sl.IndexOf(JvComboMaschine2.Text) > -1)
  and (Trim(JvEditRohwareNr.Text) = '') then begin
    Messagedlg('Rohwaren-Nr. eintragen!', mtwarning, [mbok], 0);
    JvEditRohwareNr.SetFocus;
  else begin
    PanelSpeichern.Visible := True;
    JvHTButtonspeichernOK.SetFocus;
  end;
  sl.Free;
end;

Geändert von nahpets ( 7. Mär 2016 um 08:07 Uhr) Grund: Schreibfehler behoben
  Mit Zitat antworten Zitat
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: If Abfrage mit or und and kombinieren

  Alt 6. Mär 2016, 18:09
Habe auch Delphi 7 Ent. und es kennt auch kein MatchText. Schade. Dann lasse ich es mit den vielen elseif's.

Danke für die Hilfe
  Mit Zitat antworten Zitat
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#6

AW: If Abfrage mit or und and kombinieren

  Alt 6. Mär 2016, 18:12
Hallo nahpets,

ja, mit einer Strinlist, das wäre auch eine Lösung. Besser als die vielen else's.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: If Abfrage mit or und and kombinieren

  Alt 6. Mär 2016, 18:42
So eine MatchText Funktion bekommt man scheinbar ausschließlich mit neueren Versionen.

Gut, man könnte sich die programmieren, aber dazu müsste man wohl Programmierer sein

Mal im Ernst gefragt:

Habt ihr keine eigene Bibliothek wo ihr solche Standard-Routinen/Klassen sammelt? Wenn Nein, warum nicht?

Gerade hier würde sich z.B. die Funktion IndexText( const s: string; const v: array of string ): Integer aufdrängen die man dann in MatchText verwendet.

Sowas braucht man idR alle Naselang

Und weil es gerade so viel Spaß macht, schiebt man IndexStr und MatchStr gleich noch hinterher.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort


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 13:43 Uhr.
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