IMEPadの手書き画面を表示するには?

解決


makoto  2006-02-11 17:39:41  No: 19972

Delphi6 Proを使用しています。
50過ぎの日曜プログラマーです。
ボタンをクリックするとIME Padの手書きWindowを表示したいのですが
どなたかご教授下さい。よろしくお願いします。
IMEは2003でOSはWinXpです。


どなた  2006-02-13 16:13:25  No: 19973

私も良く分かっていないのですが、こんな感じでしょうか。
Formの上にButtonとEditがある場合です。

var
  WM_IMEPAD: Cardinal;

procedure TForm1.Button1Click(Sender: TObject);
const
  SHOWIMEPAD_CATEGORY = 1;
  IPACID_HANDWRITING = 2;
var
  Imc: HIMC;
begin
  Edit1.SetFocus;
  Imc := ImmGetDefaultIMEWnd(Edit1.Handle);
  SendMessage(Imc, WM_IMEPAD, SHOWIMEPAD_CATEGORY, IPACID_HANDWRITING);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  WM_IMEPAD := RegisterWindowMessage('MSIMEShowImePad');
end;

IPACID_HANDWRITINGはimepad.hから見つけました。
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnime/html/imepad.asp


どなた  2006-02-13 16:14:13  No: 19974

IMMをusesして下さい。


makoto  2006-02-14 12:55:12  No: 19975

どなたさん、ありがとうございました。
提示のコードで念願のIMEPadが表示されました。
ずーっと調べて不明だったので感謝感激です。
提示のアドレスも勉強します。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加