« 【講座】HSPたまひよ塾 - 第7回「もし~だったら~をしろ!」 | メイン | 【講座】HSPよく使うフレーズ 第3回 時刻を表示する »
2006年03月03日
【講座】「教えて!おにたま!!」
<姫野さんからのおたより>
スクリプトの中で自動的に、「ime」や「capslock」を、
禁止にしたと思うのですが、むづかしいでしょうか?
netでいろいろ検索してみたのですが、
なかなかわかりませんでした。
<こたえ>
「教えて!おにたま!!」へのお便りありがとうございます(^^
残念ながらHSPの命令で直接、IMEを無効にしたり有効にするということは
できません。
ですが、最後の手段としてWindowsのAPIを利用することで実現することが
可能です。
imm32.dllにある、ImmAssociateContextというAPIを呼び出すことで、
IMEの変更を抑制することができます。だいたい以下のようなスクリプト
になります。
#uselib "imm32.dll"
#func ImmAssociateContext "ImmAssociateContext" int,int
a=""
input a:objid=stat ; 入力ボックスのidを調べる
ImmAssociateContext objinfo(objid,2),0 ; objidのIME変更を禁止する
この例では、objidという変数に入っているオブジェクトIDに対して、
IMEの変更を禁止させています。参考にしてみてください。
「CapsLock」の禁止については、もっと複雑になってしまいます。
ここは考え方を変えて、大文字でも小文字でも判定するようにスクリプト
を組んでみるというのは、いかがでしょうか?
それでは、またまた。
HSPに限らず、PCのコトやプログラミング関係どんなことでもお便り待っています
よ。
(おにたま)
投稿者 usuaji : 2006年03月03日 02:02
口臭チェッカー市場