Thema: Delphi GPStatus als string

Einzelnen Beitrag anzeigen

Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#15

AW: GPStatus als string

  Alt 28. Mär 2017, 11:47
Oder ohne RTTI:

Delphi-Quellcode:
Const
  cStatus : Array[TStatus] of String = (
   'Ok',
   'GenericError',
   'InvalidParameter'
  );
und dann einfach über:

cStatus[status] darauf zugreifen.

Läuft unabhängig von der Delphi-Version und sauber internationalisiert werden
könnte ich machen..
Aber dann ändere ich die GDIP_API Unit.
Was bedeutet ich muss alle Funktionen die auf GPStatus zugreifen wieder ändern. Oder?

gruss
Nein...TStatus wird ja nicht geändert. Du definierst dir einfach eine typisierte Konstante mit den benötigten Strings. Du benutzt einfach den Status (TStatus) als Index auf dein Konstanten-Array. Drops gelutscht.

Sowas kann man dann z.B. einfach internationalisieren

_(cStatus[status]); Hier mal mit der Gnugettext-Funktion.

oder in dem Fall das es das Funktionsergebnis ist

ShowMessage(_(cStatus[SaveToPng(...)])); Du kannst das ganze auch über ordinale Werte handhaben (ord(SaveToPng) bzw. IntToStr(SaveToPing)). Wär aber etwas umständlich imho.
Uwe
e=mc² or energy = milk * coffee²

Geändert von Ghostwalker (28. Mär 2017 um 11:53 Uhr) Grund: Edit
  Mit Zitat antworten Zitat