ich wollte versuchen mein Programm zu übersetzen indem ich die verschiedenen Übersetzungen in Resource-Strings speichere. Nun habe ich mir überlegt ich lege ne unit an in die ich alle Resource-Strings packe.
so sieht das dann aus:
Code: Alles auswählen
unit utranslations;
 
{$mode objfpc}{$H+}
 
interface
 
uses
  Classes, SysUtils;
 
var
  language: string;
 
resourcestring
  addmoreversions_de = 'Weitere Versionen hinzufügen';
  addmoreversions_en = 'Add more Versions';
 
implementation
 
end.jetzt würde ich gerne das ganze so aufrufen: addmoreversions_+language und dann soll der Resource-String aufgerufen werden.
Nur da hackt's ich weiß nicht wie ich das hinbekomme das der dann nach dem Resource-String sucht und das ganze nicht als String bzw ungültigen Code erkennt
... ich habe noch weiter gegooglet und bin bei Konstanten gelandet. Haben die in irgendeiner Hinsicht Vor- bzw. Nachteile?
Code: Alles auswählen
const
  addmoreversions: array[1..2] of string = ('Weitere Versionen hinzufügen',
                                             'Add more Versions');dadurch kann man diese dann einfach mit addmoreversions[language] abrufen