掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
IMEの入力値を取得するには (ID:437)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
immユニットを使います。 Form1に、Edit1とButton1とListBox1をおき、Button1のOnClickに次のような定義をすれば、とり方はわかると思います。 procedure TForm1.Button1Click(Sender: TObject); var i: integer; imc: HIMC; kl: HKL; // キーボードレイアウト Dst: PCandidateList; sz: integer; // サイズ tmppchar: PChar; begin Edit1.SetFocus; ListBox1.Clear; imc := ImmGetContext(Handle); kl := GetKeyboardLayout(0); sz := ImmGetConversionList(kl, imc, PChar(Edit1.Text), nil, 0, GCL_REVERSECONVERSION); GetMem(Dst, sz); ImmGetConversionList(kl, imc, PChar(Edit1.Text), Dst, sz, GCL_REVERSECONVERSION); for i := 0 to Dst.dwCount - 1 do begin tmppchar := PChar(DWORD(Dst) + Dst.dwOffset[i]); ListBox1.Items.Add(String(tmppchar)); end; FreeMem(Dst); ImmReleaseContext(Handle, imc); end;
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.