AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi If-Abfrage, die einen Befehl (Console) überprüfen kann ()
Thema durchsuchen
Ansicht
Themen-Optionen

If-Abfrage, die einen Befehl (Console) überprüfen kann ()

Ein Thema von Nils_13 · begonnen am 16. Mär 2006 · letzter Beitrag vom 18. Mär 2006
 
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.373 Beiträge
 
Delphi 12 Athens
 
#15

Re: If-Abfrage, die einen Befehl (Console) überprüfen kann (

  Alt 18. Mär 2006, 09:08
Wie wäre es mit 'nem ELSE, also diese Abfrage nur machen, wenn worherige übergangen wurde?
Delphi-Quellcode:
var
  iLine : Integer;
  Line : String;
  lInput, lValue: String;
  lColor: Integer;
begin
  // ...
    lInput := AnsiLowerCase(Line);

    if (Pos('#color(', lInput) = 1) and (Pos(')', lInput) > 1) then
    begin
      lValue := Copy(lInput, 8, Pos(')', lInput) - 8);

      if IdentToColor('cl' + lValue, lColor) then
        Console.Color := lColor
      else
        Console.Lines.Add('Ungültiger Parameter');
    end
    else
      if Console.Lines[iLine] <> 'then
      begin
         Console.Lines.Add('Unbekannter Befehl');
      end;
PS: vielleicht ist dir aufgefallen, daß ich oben das # vor'm color vergaß und wenn du dieses schon einfügst, dann müssen natürlich auch die Positionen (also die 6en, 7en und 8en) um das hinzugefügte Zeichen erweiters werden, also um 1 erhöt

Delphi-Quellcode:
line := trim(line);
if (copy(line, 1, 7) = '#color(') and (line[length(line)] = ')then begin
  if copy(line, 8, length(line) - 8) = 'blackthen
    Console.color := clBlack
  else if copy(line, 8, length(line) - 8) = 'maroonthen
    Console.color := clMaroon
  else Console.Lines.Add('Falscher Farbwert');
//end else if (copy(line, 1, 14) = '#otherCommand(') and (line[length(line)] = ')' then begin
// if copy(line, 14, length(line) - 14) = '...' then
// ...
// else Console.Lines.Add('Falscher Parameter');
end else Console.Lines.Add('Befehl unbekannt.');
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
 


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 07:44 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