Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Dialogsprache? (https://www.delphipraxis.net/161460-dialogsprache.html)

Gustav.R 4. Jul 2011 21:40

Dialogsprache?
 
Hallo Babylonier :-)

Ich möchte eine wirklich sehr knappe Kurzanleitung zu einem dt. Delphiprogramm schreiben, welches unter dt. Windows mit dt. Delphi kompiliert wurde.

Wie sieht das aus, wenn das dt. Programm auf einem englischen Windows gestartet wird?

Werden da manche Buttonbeschriftungen in Standarddialogen (OpenDialog, SaveDialog) oder MessageBoxen automatisch von Windows übersetzt oder steht da immer das Deutsche [Öffnen], [Speichern], [Ja] [Nein] [Abbrechen]?

Oder kann mir bitte jemand, der mit einem engl. Windows und einem engl. Delphi arbeitet, die paar Zeilen kompilieren und dann die exe hier hochladen?

Delphi-Quellcode:

unit UnitBabylon;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm1 = class(TForm)
    OpenDialog1: TOpenDialog;
    SaveDialog1: TSaveDialog;
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  if OpenDialog1.Execute then ; //steht da Öffnen oder Open?
  if SaveDialog1.Execute then ; //sthet da Speichern oder Save?
  MessageBox(Handle, 'Euro-Message: € (<- Eurosign)',
    'Title Caption (Umlaute äöüß)', mb_YesNoCancel or mb_IconQuestion or
    mb_DefButton3); //steht da Ja/Nein/Abbrechen oder Yes/No/Cancel?
  PostQuitMessage(0);
end;

end.
Bitte - Danke!

GG

blackfin 4. Jul 2011 21:58

AW: Dialogsprache?
 
Standard-Dialoge, die vom System selbst kommen ("Common Dialogs") werden in der jeweiligen installierten Sprache des Betriebsystems angezeigt.
Für die VCL-Dialoge kann man mit dem Programm "BDSSetLang.exe" im \bin-Verzeichnis der IDE die Sprache der zu compilierenden Resourcen einstellen / umschalten.


Für Multi-Language-Support deiner Applikation brauchst du allerdings entsprechende Komponenten wie GetText oder Tsilang und ähnliches (oder schreibst dir selbst was :-D)

himitsu 4. Jul 2011 22:04

AW: Dialogsprache?
 
Diese Funktionen rufen die entsprechenden WinAPIs auf,
Windows kümmert sich um die Darstellung
und auch die Buttons kommen von Windows.

Demnach sollte die Beschriftung auch in der Systemsprache erfolgen. (falls es keiner programmseitig geziehlt die Button-Texte ändert)

Gustav.R 4. Jul 2011 22:24

AW: Dialogsprache?
 
@blackfin, Danke dir für die Antwort,

allerdings ist mir nach wie vor leider noch nicht klar, ob OpenDialog und SaveDialog nun tatsächlich von "Common Dialogs" abstammen. Sind OpenDialog und SaveDialog denn nun Standard-Dialoge, die vom System selbst kommen?

Mit "Multi-Language-Support" hab ich nichts vor, ich will lediglich nur eine engl. Kurzanleitung für ein dt. Programm schreiben.

Sorry, falls ich begriffsstutzig sein sollte ;-)

@himitsu, Dankeschön!
Folglich zeigt ein dt. Programm unter einem engl. Windows [Open] statt [Öffnen] in einem OpenDialog an, richtig?

GG

Luckie 4. Jul 2011 22:26

AW: Dialogsprache?
 
Zitat:

Zitat von Gustav.R (Beitrag 1109968)
Sind OpenDialog und SaveDialog denn nun Standard-Dialoge, die vom System selbst kommen?

Sind sie und Messageboxen. ShowMessage aber nicht.

himitsu 4. Jul 2011 22:47

AW: Dialogsprache?
 
Zitat:

Zitat von Gustav.R (Beitrag 1109968)
Folglich zeigt ein dt. Programm unter einem engl. Windows [Open] statt [Öffnen] in einem OpenDialog an, richtig?

Jupp, was natürlich immer voll häßlich aussieht. :wall:

ShowMessage = TTaskMessageDialog oder TMessageForm (Delphi-Form) und demnach Delphi-Sprache
MessageBox = WinAPI = Windows-Sprache
Open-/SaveDialog = WinAPI

Gustav.R 4. Jul 2011 23:12

AW: Dialogsprache?
 
Zitat:

Zitat von Luckie (Beitrag 1109969)
Zitat:

Zitat von Gustav.R (Beitrag 1109968)
Sind OpenDialog und SaveDialog denn nun Standard-Dialoge, die vom System selbst kommen?

Sind sie und Messageboxen. ShowMessage aber nicht.

Das wollte ich lesen! Hoffentlich stimmts :wink:

Luckie 4. Jul 2011 23:15

AW: Dialogsprache?
 
Wenn du mir das nicht glaubst, lüge ich dich nie wieder an.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:26 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz