AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi dxgettext und Application.ShowMessage:WideString->PAnsiChar?
Thema durchsuchen
Ansicht
Themen-Optionen

dxgettext und Application.ShowMessage:WideString->PAnsiChar?

Ein Thema von OldGrumpy · begonnen am 26. Okt 2006 · letzter Beitrag vom 27. Okt 2006
Antwort Antwort
Benutzerbild von OldGrumpy
OldGrumpy

Registriert seit: 28. Sep 2006
Ort: Sandhausen
941 Beiträge
 
Delphi 2006 Professional
 
#1

dxgettext und Application.ShowMessage:WideString->PAnsiCh

  Alt 26. Okt 2006, 13:51
Hallo zusammen,

heute bin ich beim Einbau der Lokalisierungen auf eine Codestelle gestossen, wo eine Messagebox mit zu lokalisierenden Texten und entsprechenden Buttons angezeigt wird.

Vorher (vereinfacht):
intUserAntwort=Application.MessageBox('Sind Sie sicher?', 'Bestätigung', MB_YESNO + MB_ICONINFORMATION + MB_TASKMODAL); Laut Doku sind die ersten beiden Parameter PAnsiChar, mit dxgettext komme ich da nicht direkt auf nen passenden Datentyp, auch mit Casting nicht. Wie macht man das am elegantesten?
"Tja ja, das Ausrufezeichen... Der virtuelle Spoiler des 21. Jahrhunderts, der Breitreifen für die Datenautobahn, die k3wle Sonnenbrille fürs Usenet. " (Henning Richter)
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: dxgettext und Application.ShowMessage:WideString->PAn

  Alt 27. Okt 2006, 07:53
Dann wirst Du auf die Win32-Funktion MessageBoxW zurückgreifen müssen.

Nur so als Tipp: 'Bestätigung' solltest Du dann so schreiben _('Bestaetigung')
Sven Harazim
--
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: dxgettext und Application.ShowMessage:WideString->PAn

  Alt 27. Okt 2006, 08:09
Hallo,

da ich GetText wohl auch verwenden werden,
habe ich eine Frage an OldGrumpy.

Muss das nicht erst alles "eingeenglischt" werden,
oder benutzt die diese neue Beta,
die auch deutsch als Ausgangspunkt haben kann?


Heiko
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: dxgettext und Application.ShowMessage:WideString->PAn

  Alt 27. Okt 2006, 08:23
ich würde Dir das auch beantworten

der grund, warum gesagt wird, man solle erst alles in Englisch schreiben, ist der, dass eben solche Sonderbuchstaben (ä,ö,...) von den jeweiligen Übersetzerprogrammen / Übersetzern unter Umständen nicht richtig gelesen werden können.

Wenn man also beim Deutsch bleibt und Sonderbuchstaben vermeidet, ist das kein Problem (wird beim Französischen schon schwerer).

Zumindest sehe ich keinen Grund, meine Anwendung in Englisch zu entwickeln, wenn mein Zielmarkt Deutschland und Polen ist.
Sven Harazim
--
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: dxgettext und Application.ShowMessage:WideString->PAn

  Alt 27. Okt 2006, 08:26
Zitat von hoika:
oder benutzt die diese neue Beta,
die auch deutsch als Ausgangspunkt haben kann?
die letzte Beta im SVN ist sehr stabil (besser gesagt, es gab noch kein Problem). ist glaub ich auch schon ewig RC
Sven Harazim
--
  Mit Zitat antworten Zitat
Benutzerbild von OldGrumpy
OldGrumpy

Registriert seit: 28. Sep 2006
Ort: Sandhausen
941 Beiträge
 
Delphi 2006 Professional
 
#6

Re: dxgettext und Application.ShowMessage:WideString->PAn

  Alt 27. Okt 2006, 13:28
Aua, aua, an MessageBoxW hab ich ja gar nicht gedacht

Manchmal sieht man den Wald vor lauter Bäumen nicht

Alternativ kann man natürlich auch selber einen Castingwald bauen:
Application.MessageBox(PAnsiChar(string(_('blablabla'))), PAnsiChar(string(_('Überschrift'))), MB_OK); Kommt halt darauf an, welche Zielplattformen man im Auge hat. Ich benutze für mein Projekt jetzt lieber MessageBoxW, da bleibt der Code übersichtlicher. Und Mehrfachcasting ist eh hässlich (auch wenn einem manchmal nix anderes übrig bleibt) und fehlerträchtig

Welche Sprache man als Basis nimmt, ist eigentlich egal. Ich entwickel momentan an mehrsprachigen Projekten, daher sind bei mir alle Texte erstmal englisch. Dann können die Übersetzungen nämlich schon raus, während ich noch etwas Zeit für die deutschen Texte und GUI-Anpassungen hab (Text zu lang, o.ä., kennt man ja).

@sh17: Nö, mach ich nicht Die deutschen Umlaute seh eh nur ich, ich hatte jetzt aus reiner Faulheit keine englischen Texte reingeschrieben Basissprache für die Programme ist hier aus Gewohnheit immer Englisch, da gibts am wenigsten Probleme mit den Übersetzern
"Tja ja, das Ausrufezeichen... Der virtuelle Spoiler des 21. Jahrhunderts, der Breitreifen für die Datenautobahn, die k3wle Sonnenbrille fürs Usenet. " (Henning Richter)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:59 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