Einzelnen Beitrag anzeigen

Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#7
  Alt 30. Jan 2003, 15:15
Hallo Tpercon,

Deine Frage ist eigentlich bereits durch Christian beantwortet worden.

Die Funktion liefert einen Zahlenwert zurück, der mit case-Anweisungen ausgewertet werden kann (nicht muß)!

Zum Beispiel:

Delphi-Quellcode:
  // ....
  case NofStr(lblSelOrder.Caption, txtArtSelOrder) of
    0: suchfld := 'Such';
    1: suchfld := 'ArtNr';
    2: suchfld := 'HstNr';
  end;
  // ....
oder

Delphi-Quellcode:
  // ....
  case NofStr(lblSelOrder.Caption, txtArtSelOrder) of
    0: edSuch2.Text := TabArt.FieldByName('Such').AsString;
    1: edSuch2.Text := TabArt.FieldByName('ArtNr').AsString;
    2: edSuch2.Text := TabArt.FieldByName('HstNr').AsString;
  end;
  // ....
wobei ich von vornherein erkläre, daß man alles auch ganz anders programmieren könnte.

Ob Array oder StringList oder Datenbank oder ... oft ist es persönlicher Geschmack und Erfahrung eines Programmierers, der ihn die einen oder anderen Variante wählen läßt, manchmal ist es fehlendes Wissen, wie etwas optimaler geht (aber um das zu ändern wurde ja solche Foren wie dieser eingerichtet). Wenn einer sagt, ich mache das immer so, findest Du mit Sicherheit mindestens einen, der Dir erklärt, warum Deine Methode falsch ist.

In der Programmierung zählt unterm Strich, daß ein Programm möglichst fehlerfrei läuft, bedienerfreundlich ist und vielleicht auch noch einen Nutzen bringt.

Und Speicherplatz? Als ich mit 4 kB (KiloByte !!!) Hauptspeicher auskommen mußte und in Assembler programmiert habe, da hat mich so etwas interessiert. Bei TurboPascal schon etwas weniger und auf der aktuellen Rechentechnik mit 'zig GByte Festplattenkapazität und MB bis GB Hauptspeicher ist das nur noch selten relevant. Und was die Performance anbelangt: kannst Du Dir vorstellen, wie schnell MS-DOS und die alten DOS-Programme auf der heutigen Rechentechnik laufen würden? Alles nur eine Frage der Hardware.

Genug palavert!

mfg
eddy
  Mit Zitat antworten Zitat