Borland C++ Builder; GUI in 2 Sprachen programmieren???

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Borland C++ Builder; GUI in 2 Sprachen programmieren???

    hi,

    sollte es einen thread zu diesem thema oder eine research-url geben, laßt mir bitte meinen kopf. ich habe zu mindest nichts zu diesem thema gefunden.

    mein problem:

    ich möchte eine gui in 2 verschieden sprachen (deutsch / englisch) programmieren.
    es soll erst einmal nur die möglichkeit bestehen, sobald das prog läuft, eine der beiden sprachen zu wählen bzw. die sprache umzustellen.

    später könnte es vielleicht noch so realisiert werden, daß die sprachwahl in ne konfig geschrieben wird und beim nächsten start automatisch passiert...


    wie kann ich das realisieren???

    grüße
    draco
  • Bei Borland weiß ich es leider nicht genau wie es geht, bei MSVC++ gibt es so genannte "Resource files" mit einem separaten "Resource Compiler" (rc.exe).
    Dieser compiliert die separaten Textdateien in ".res" Files und diese können mit den Objectfiles und den Lib-Files zusammengelinkt werden.
    Wichtig: Es darf pro Linkvorgang nur eine .res-Datei geben.
    Vielleicht hilft dir das bei der Suche weiter....
    viel Erfolg
  • ich habe jetzt ein tool (xn resource editor) gefunden, mit dem man 'einfach' die *.res editieren kann.

    leider weiß ich nicht wie und was. bedauerlicher weise finde ich keine hilfen dazu im netz ......

    meine probleme:
    - was muß ich im *.res anlegen und eintragen, um 2 sprachen zu verfügung zu haben?
    - wie und wo muß ich platzhalter für die übersetzungen definieren und ansprechen?




    @phax: kannst du mir mit deiner methode vielleicht ein kurzes ress anlegen, in dem zu zb. einem button 2 texte zugewiesen hast?

    oder jeder andere natürlich auch .....

    ich bin über jede hilfe dankbar.
  • Schaue dir das mal an

    Schaue dir mal den Thrad an.
    Die dazugehörige XML-Datei sieht wie folgt aus. Super Lösung und funktioniert fast. Nur noch eine Komponente fehlt noch.

    http://www.easy-coding.de/borland-cpp-builder-caption-problem-t1811.html



    <?xml version="1.0" encoding="ISO-8859-1" ?>
    - <text-list>
    - <Button_Para>
    <deu>Prameterliste</deu>
    <eng>Pramameterlist</eng>
    </Button_Para>
    - <Button_Stell>
    <deu>Stellkurve</deu>
    <eng>Curve</eng>
    </Button_Stell>
    - <Button_Proto>
    <deu>Protokoll erstellen</deu>
    <eng>Make Protokoll</eng>
    </Button_Proto>
    - <Button_ParaDr>
    <deu>Parameter drucken</deu>
    <eng>Print Parameters</eng>
    </Button_ParaDr>
    - <Button_BerPr>
    <deu>Berechnung der Prüfsumme</deu>
    <eng>Calculate the Checksum</eng>
    </Button_BerPr>
    </text-list>
  • hm, ich hatte mir deinen thread schon mal angeschaut.
    mein problem ist, daß es schon wieder zu tief in die materie geht.

    ich bin nicht so weit, daß ich den quelltext ohne weiteres verstehe.
    und da es nicht funktioniert, kann ich damit auch nichts anfangen...

    ehrlich gesagt suche ich ne einfache lösung.... :roll:


    davon mal abgesehen.....

    wenn ich es schaffen sollte alles anzulegen und einzurichten, wie funktioniert das dann mit der änderung der captions?

    ich stellte mir vor, ich schalte die sprachen per ratioboxen um.

    wenn ich im laufendem programm die sprache ändere, müssen sich ja auch die cations ändern. muß ich das prog schließen lassen oder kann ich das ändern in der laufzeit erledeigen und wie?
  • Leider keine andere Lösung für dich

    Hey,
    leider kann ich dir jetzt keine andere Lösung anbieten. Die Umstellung der Caption würde auf ein Klick des Ländernahmens passieren. Sobald du einen Button dem Fenster hizufügst, brauchst du ihn nur noch bennen und in der XML-Datei den Button mit verschieden Captions für die jeweilige Sprache einfügen. Eigentlich recht einfach. Habe auch noch Probleme mit dem Quelltext aber es wird von Tag zu Tag besser. Bei dir ja auch.
  • "radian" schrieb:

    Die Umstellung der Caption würde auf ein Klick des Ländernahmens passieren.

    wie muß ich mir das vorstellen? wie in web-seiten wo meist oben rechts dann länderflaggen sind? also im grunde kann ich das auch durch 2 oder mehr ratiobutton ersetzen (jeh nach sprachenanzahlen)?

    "radian" schrieb:

    Sobald du einen Button dem Fenster hizufügst, brauchst du ihn nur noch bennen und in der XML-Datei den Button mit verschieden Captions für die jeweilige Sprache einfügen.

    das funktioniert als onur mit buttons? mit labels nicht?

    "radian" schrieb:

    leider kann ich dir jetzt keine andere Lösung anbieten. ...
    Habe auch noch Probleme mit dem Quelltext aber es wird von Tag zu Tag besser.

    macht ja nichts. vielleicht kann ja noch wer anderes was zum thema schreiben. bin aber trotzdem am fortschritt deiner arbeit interessiert. führe also deinen thread weiter. ;)
  • Fast richtig

    Ehm,
    also das geht auch mit Labels, TextEdits unsw. !

    Wenn du einen RadioButton oder einen normalen Button oder irgend ein anderes Element anklickst, ist dieses machbar. Fast alle Elemente von VCL lassen sich mit ener Aktion belegen. Wenn du den Builder benutzt brauchst du ja nur das Element zweimal anklicken und es öffnet sich die Methode für das Anklicken des Buttons als Quelltext. In diesem kannst du die Methode einfügen die ich programmiert habe. Leider fehlt noch etwas. Nur eine Kleinigkeit! Stelle dir das mal Online, wenn es fertig ist.

    Die XML-Datei führst du einfach so fort. Kannst also jede Sprache hinzufügen und sogar komplett Elemente auch löschen lassen.
  • Habe die Lösung für mein und auch dein Problem

    Hey,

    mein Programm zu Sprachumstellung ist fast fertig. Ich könnte dir den Quelltext geben. Es funktioniert alles. Muss nur noch etwas verbessert werden und Exceptions abgefangen werden. Ich kommentiere es dir dann auch aus. Damit solltest du es auf deine Wünsche einstellen können. Es ist echt ganz nützlich und gibt für Borland-Programmierer nur wenig andere Lösungen (Forausgesetzt man hat nr die Professieonal-Version von dem C++Builder). Aber es klappt und ist komfortabel für den Programmierer von Forms. Es kann dann entweder zu jedem Konstrukter des Forms eingefügt werden oder du machst es so wie ich als ein extra Modul mit virtuellen Methoden.
    Der Quelltext folgt bald.