| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

差分

ナビゲーションに移動 検索に移動
ページの作成:「==MFC リストボックスに要素== [VC++]{{category MFC}} ===手順=== ====リストボックスに変数を割り当てる(m_list_line)==== File:0782_mfc_lis…」
==MFC リストボックスに要素==
[VC++]{{category MFC}}

===手順===
====リストボックスに変数を割り当てる(m_list_line)====
[[File:0782_mfc_listbox_01.jpg]]

====ファイルを読み込み、1行を1要素として追加====
// テキストボックスの値を、CStringにコピー
m_src_file.GetWindowTextW(fileName);

CStdioFile file;
CString line;

int i = 0;
if (file.Open(fileName, CFile::modeRead)) {

while(file.ReadString(line)) {

m_list_line.AddString(line); // <- 行を追加

}
file.Close();
}

====文字化け====
MFC ファイルを読む で、TRACEしたときは、文字化けを起こさなかったが、リストボックスに追加すると文字化けが発生

[[File:0783_mfc_listbox_02.jpg]]

=====理由=====
このあたりを参照
*http://fatalita.sakura.ne.jp/3DLib/Ref/_T/

=====対策=====
プロジェクトのプロパティの文字セットを、「[文字コード] [マルチ バイト文字セット]を使用する」に変更する。
(変更しない状態だとそりゃもう面倒くさそうなのであきらめた)
[[File:0781_char_code_01.jpg]]

ソースを若干修正
m_src_file.GetWindowTextW(fileName);

m_src_file.GetWindowTextA(fileName);

====文字化け直るも・・・====
文字化けは直った。
L&Fがさっきと違うくないか?
[[File:0784_mfc_listbox_03.jpg]]

====参考キーワード====
*MultiByteToWideChar
*WideCharToMultiByte
*CA2W
*CW2CT

案内メニュー