Messagebox mit Umlautproblem

Messagebox mit Umlautproblem

Beitragvon malabarista » 18. Jan 2018, 11:56 Messagebox mit Umlautproblem

Ich versuche mit MessageBox einen Text auszugeben. Allerdings gelingt mir nicht eine korrekte Darstellung der Umlaute (screenshot anbei).
(Leider habe ich hier jetzt die Meldung "Das Kontingent für Dateianhänge ist bereits vollständig ausgenutzt."
also:
Installation erfolgreich durchgef~A1/4hrt
Code: Alles auswählen
 
   zv:=utf8toansi('Installation erfolgreich durchgeführt');
   MessageBox(0,pchar(zv),'OK',mb_Ok);
 

Wenn ich das "utf8toansi" weglasse, ist das Aussehen das Gleiche.
Was muss ich zur Konvertierung der Zeichen tun ?
malabarista
 
Beiträge: 277
Registriert: 11. Jun 2016, 11:16
Wohnort: Konstanz
OS, Lazarus, FPC: Linux Mint 18.1 L1.6.2-1 FPC 3.0.0 | 
CPU-Target: 64Bit
Nach oben

Beitragvon MacWomble » 18. Jan 2018, 12:02 Re: Messagebox mit Umlautproblem

Warum machst du nicht:

Code: Alles auswählen
zv:='Installation erfolgreich durchgeführt';
ShowMessage(zv);


bzw.

Code: Alles auswählen
ShowMessage('Installation erfolgreich durchgeführt');


PS: uses dialogs

Ich habe noch nie Messagebox direkt verwendet, wozu soll das gut sein?
Ich meine, alles was man mit dem MessageComposer (STRG-M) an Dialogen erstellen kann, ist für jeden Zweck ausreichend.
Zuletzt geändert von MacWomble am 18. Jan 2018, 12:10, insgesamt 2-mal geändert.
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.
MacWomble
 
Beiträge: 514
Registriert: 17. Apr 2008, 00:59
Wohnort: Freiburg
OS, Lazarus, FPC: Mint 18.3 Cinnamon / CodeTyphon Generation V Plan 6.60 (FPC 3.1.1 Rev 39389) | 
CPU-Target: Intel i7 64/32 Bit
Nach oben

Beitragvon gladio » 18. Jan 2018, 12:09 Re: Messagebox mit Umlautproblem

UTF8toAnsi und einige andere funktionieren nicht mehr:
http://wiki.freepascal.org/Better_Unicode_Support_in_Lazarus

In Windows kann man das nehmen: WinCPToUTF8 bzw. UTF8ToWinCP
gladio
 
Beiträge: 95
Registriert: 21. Jun 2014, 05:15
Wohnort: Insel Rügen
OS, Lazarus, FPC: Win7/10-32/64 - Laz 1.8 Standard-Edition | 
CPU-Target: 32/64Bit
Nach oben

Beitragvon wp_xyz » 18. Jan 2018, 12:42 Re: Messagebox mit Umlautproblem

Bei der alternativen Funktion MessageDlg ist UTF8-Support eingebaut. Auch bei MessageBox, aber nur wenn, man die Version aus Unit LCLIntf+LCLType verwendet. Die Version in Unit Windows dagegen verlangt ANSI und daher die genannten Konversionen. Neben der Plattformunabhänigkeit noch ein Grund, darauf zu achten, dass die Unit Windows NICHT in "uses" vorkommt.
wp_xyz
 
Beiträge: 2533
Registriert: 8. Apr 2011, 08:01

Beitragvon theo » 18. Jan 2018, 13:03 Re: Messagebox mit Umlautproblem

Ich würde dafür auch nicht Winapi nehmen, aber wenn es unbedingt sein muss, würde wahrsch. auch MessageBoxW helfen.

Code: Alles auswählen
function MessageBoxW(hWnd:HWND; lpText:LPCWSTR; lpCaption:LPCWSTR; uType:UINT):longint;
theo
 
Beiträge: 8046
Registriert: 11. Sep 2006, 18:01

Beitragvon Roland Chastain » 19. Jan 2018, 07:23 Re: Messagebox mit Umlautproblem

Hallo! Vielleicht ist die Codierung Ihrer Quelldatei nicht die richtige?

Bild
Petit poisson deviendra grand,
Pourvu que Dieu lui prête vie.
Roland Chastain
 
Beiträge: 58
Registriert: 7. Jul 2012, 20:50
Wohnort: Dakar, Senegal

Beitragvon malabarista » 19. Jan 2018, 09:28 Re: Messagebox mit Umlautproblem

UTF8ToWinCP war die Lösung dafür.
Weil es eine Software ist, die ausschliesslich unter Windows läuft, sind plattformübergreifende Lösungen nicht notwendig.
malabarista
 
Beiträge: 277
Registriert: 11. Jun 2016, 11:16
Wohnort: Konstanz
OS, Lazarus, FPC: Linux Mint 18.1 L1.6.2-1 FPC 3.0.0 | 
CPU-Target: 64Bit
Nach oben

Beitragvon MacWomble » 20. Jan 2018, 06:52 Re: Messagebox mit Umlautproblem

Dennoch verstehe ich den Sinn nicht, MessageBox zu verwenden. Was ist der Vorteil einen Dialog so umständlich zusammen zu basteln - gegenüber der Verwendung von ShowMessage?
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.
MacWomble
 
Beiträge: 514
Registriert: 17. Apr 2008, 00:59
Wohnort: Freiburg
OS, Lazarus, FPC: Mint 18.3 Cinnamon / CodeTyphon Generation V Plan 6.60 (FPC 3.1.1 Rev 39389) | 
CPU-Target: Intel i7 64/32 Bit
Nach oben

Beitragvon wp_xyz » 20. Jan 2018, 10:30 Re: Messagebox mit Umlautproblem

ShowMessage hat nur 1 Button (OK) und kein eingeblendetes Icon.
wp_xyz
 
Beiträge: 2533
Registriert: 8. Apr 2011, 08:01

Beitragvon MacWomble » 20. Jan 2018, 11:05 Re: Messagebox mit Umlautproblem

Aber in der Frage war doch auch nur ein OK-Button gefragt.
Außerdem würde dann ja MessageDlg funktionieren (Mit Icon und Button(s)).
Es erschließen sich mir keinerlei Vorteile, MessageBox direkt zu verwenden und mit Zeichensatzumwandlungen hantieren zu müssen.
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.
MacWomble
 
Beiträge: 514
Registriert: 17. Apr 2008, 00:59
Wohnort: Freiburg
OS, Lazarus, FPC: Mint 18.3 Cinnamon / CodeTyphon Generation V Plan 6.60 (FPC 3.1.1 Rev 39389) | 
CPU-Target: Intel i7 64/32 Bit
Nach oben

Beitragvon wp_xyz » 20. Jan 2018, 12:25 Re: Messagebox mit Umlautproblem

MacWomble hat geschrieben:Aber in der Frage war doch auch nur ein OK-Button gefragt.

Bin wahrscheinlich wieder von Blindheit geschlagen, aber wo steht das?
wp_xyz
 
Beiträge: 2533
Registriert: 8. Apr 2011, 08:01

Beitragvon Ally » 20. Jan 2018, 12:43 Re: Messagebox mit Umlautproblem

TaskDialog ist zwar für eine simple Message etwas "overdressed", gibt aber nicht nur Umlaute korrekt aus, sondern beschriftet auch die Buttons in der Systemsprache.
Ally
 
Beiträge: 76
Registriert: 11. Jun 2009, 08:25

Beitragvon malabarista » 20. Jan 2018, 13:34 Re: Messagebox mit Umlautproblem

Die Gründe hatte ich in dem Thread
"Showmessage verursacht Compile-Fehler"
dargelegt.
malabarista
 
Beiträge: 277
Registriert: 11. Jun 2016, 11:16
Wohnort: Konstanz
OS, Lazarus, FPC: Linux Mint 18.1 L1.6.2-1 FPC 3.0.0 | 
CPU-Target: 64Bit
Nach oben

Beitragvon MacWomble » 20. Jan 2018, 18:03 Re: Messagebox mit Umlautproblem

malabarista hat geschrieben:Die Gründe hatte ich in dem Thread
"Showmessage verursacht Compile-Fehler"
dargelegt.


Jetzt hab ich es auch kapiert :oops:
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.
MacWomble
 
Beiträge: 514
Registriert: 17. Apr 2008, 00:59
Wohnort: Freiburg
OS, Lazarus, FPC: Mint 18.3 Cinnamon / CodeTyphon Generation V Plan 6.60 (FPC 3.1.1 Rev 39389) | 
CPU-Target: Intel i7 64/32 Bit
Nach oben

• Themenende •

Zurück zu Windows



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

porpoises-institution
accuracy-worried