Hallo,
ich würde wie folgt vorgehen:
1.
mit GetTextVal(E_TXTLIN,TRUE,&txtdata);; den Schrifttyp ermitteln, wenn man einen Text neuerzeugt, ansonsten hat man ja das Element.
2.
prüfen, ob CharSet ANSI oder OEM ist (siehe Megatyp.h)
3.
Wenn OEM, dann ist eine AnsiToOem Konvertierung notwendig, wenn Ihr Ausgangstext ANSI ist.
Wenn Ansi, dann ist eine OemToAnsi Konvertierung notwendig, wenn Ihr Ausgangstext OEM ist.
Diese Konvertierungen sind ja auch mit der Klasse CString möglich.
4.
mit GetTextVal(E_TXTLIN,0,&txtdata) das umgebende Rechteck neuberechnen
5.
Element austauschen
Tja, so sollte das eigentlich vom Prinzip her funzen...
Also,man muß immer den richtigen CharakterSet (CharSet) zur Anwendung bringen. Die Umlautcodierung im String muß dem verwendeten CharSet entsprechen. Im Zweifelsfall würde ich sprintf verwenden, das klappt eigentlich immer.
mfg
Bernd
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP