2016-11-14 26 views
0

私は、静的なテキストラベル上のフォームデザインを行う際に、特殊文字にąęįを見ることができますこれらの文字をプログラミング方法で設定すると、私は次のようになります。特殊文字は

enter image description here

上記のスクリーンショットのように、疑問符の代わりに正しい文字が表示されるようにするにはどうすればよいですか?

UPD:

私のプロジェクトはマルチバイトです。私は別のコンピュータで私は特殊文字を見ることができることがわかった。どうして?

答えて

2

これが正しく機能するには、Unicode文字セットを使用する必要があります。私はMBCS文字セットを使用していると推測しています。

プロジェクトのプロパティで変更することができます。 enter image description here

ビジュアルスタジオエディタは完全にUnicodeです。つまり、ダイアログをデザインするときに入力する特殊文字を表示することができます。ただし、アプリケーションがUnicodeサポートで構築されていない場合は、実行時にその文字を表示することはできません。 Thichなぜあなたは???アプリケーションを実行するときにUnicodeテキストを置き換えます。

+0

はい、私のプロジェクトはマルチバイトですが、私はそれをやっている間に多くのコンパイルエラーがあるので、これを変更したくないです。私は別のコンピュータで私は特殊文字を見ることができることがわかった。どうして? – vico

+0

Unicodeへの移植中に問題が発生している可能性がありますが、ここで助けを求めて解決してください。あなたが始められるかもしれないガイドがあります:https://msdn.microsoft.com/en-us/library/cc194801.aspx –

+0

プロジェクトをUnicodeに変更したくない場合は、 ':: SetDlgItemTextW(m_hWnd、 IDC_STATIC_X、L "±" ")' * .cppコードの中にパッチとして... –

0

異なるコンピュータで異なる結果が得られる場合、これは明らかにシステム設定の違いによるものです。

これを制御する設定は、「Unicode以外のプログラムの言語」と呼ばれ、[コントロールパネル]、[言語]、[日付、時刻、または数字の形式を変更する]の下にあります。残念ながら、これはグローバルな設定です(つまり、アプリケーションごとまたはプログラムで設定することはできません)。再起動が必要です。

可能であれば(そして意味のあるコストまたは労力により)アプリケーションをUnicodeにすることを検討してください。