tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトルComboBoxExのUnicode対応
記事No13834
投稿日: 2009/07/10(Fri) 10:57
投稿者みなな
いつもお世話になっております。

昨日のopenのUnicode対応に引き続き、コントロールをUnicode対応させています。
現在ComboBoxExをAPIで作っていて、AdditemをUnicode対応させようとしています。
COMBOBOXEXITEMに値を入れてSendmessageWすればいいのかなと思うのですが、
COMBOBOXEXITEMの宣言で悩んでいます。

Public Type COMBOBOXEXITEM
    mask    As Long
    iItem   As Long
    pszText As String
    cchTextMax  As Long
    iImage  As Long
    iSelectedImage  As Long
    iOverlay    As Long
    iIndent As Long
    lParam  As Long
End Type

ここの pszText を変えなければいけないのかと思うのですが、
どう変えればいいのでしょうか?
ご存知の方いらっしゃれば教えて下さい、よろしくお願い致します。

[ツリー表示へ]
タイトルRe: ComboBoxExのUnicode対応
記事No13835
投稿日: 2009/07/10(Fri) 14:25
投稿者魔界の仮面弁士
試していないので保証は出来ませんが、
 Dim b() As Byte
 b = strUnicode
 Dim x As COMBOBOXEXITEM
 x.pszText = VarPtr(b(0))

 x.pszText = StrPtr(strUnicode)
でどうでしょう。

あるいは下記の『APIとの文字列のやりとり(ANSI vs UNICODE変換)』あたり。
http://homepage3.nifty.com/numericworld/computer/vb/memo.htm

[ツリー表示へ]
タイトルRe^2: ComboBoxExのUnicode対応
記事No13836
投稿日: 2009/07/10(Fri) 14:37
投稿者みなな
お返事ありがとうございます。
試してみました。

結果はニイハオの後に改行文字みたいなのが付加されました。
strPtr(s)に変えたらニイハオが中国語でちゃんと表示できました。

これでいろいろ文字入れてしばらく様子をみてみます。
いつもありがとうございます!

[ツリー表示へ]