- 311 名前:デフォルトの名無しさん mailto:sage [2007/02/04(日) 18:14:46 ]
- すいません。御存知の方がいたら教えてください。
環境:Windows XP,VC++6.0 「_MBCS」指定 Windowsのアプリを作っているのですが、リストビューの部分のみにUnicode文字のデータを表示 させたいので以下のようにリストビューの部分のみワイド文字仕様の構造体を使用しています。 リストビュー設定部のソース static HWND hList; LV_COLUMNW lvcol;LV_ITEMW item; InitCommonControls(); hList = CreateWindowExW(0,WC_LISTVIEWW, L"",WS_CHILD | WS_VISIBLE | LVS_REPORT, 0, 0, 300, 200,hWnd,(HMENU)ID_LISTVIEW,hInst,NULL); lvcol.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM; lvcol.fmt = LVCFMT_LEFT; lvcol.cx = 100; lvcol.pszText = L"項目1"; lvcol.iSubItem = 0; ListView_InsertColumn(hList, 0, &lvcol); item.mask = LVIF_TEXT; item.pszText = L"内容1"; item.iItem = 0;item.iSubItem = 0; ListView_InsertItem(hList, &item); これで実行すると、リストビュー部に表示される文字が全て16進で表示されてしまいます。 正常に「項目1」,「内容1」で表示させる方法は、無いのでしょうか? ListView_InsertColumnの部分のヘッダファイルを見ると #define ListView_InsertColumn(hwnd, iCol, pcol) \ (int)SNDMSG((hwnd), LVM_INSERTCOLUMN, (WPARAM)(int)(iCol), (LPARAM)(const LV_COLUMN FAR*)(pcol)) となっているから無理なのかな?よろしくお願いします。
|

|