tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^3: SendInput検索中
投稿日: 2012/06/07(Thu) 16:33
投稿者魔界の仮面弁士
> 文字をABC→vbKeyA vbKeyb vbKeyc に
公式の一覧表としてはこれにあたります。
http://msdn.microsoft.com/en-us/library/ms927178.aspx


> 変換する関数がわかりません 
無いと思います。MapVirtualKeyEx API だと、
 スキャンコード → 仮想キーコード
 仮想キーコード → スキャンコード
 仮想キーコード → 文字値
はできますが、その逆の
 文字値 → 仮想キーコード
はできないんですよね…。

Num Lock、Kana Lock、Caps Lock、IME のOn/Off などによって、
キー入力した内容と実際に入力される内容は変わってきますので、
入力させたい文字列が固定的でない場合は、変換には苦労しそうです。
(特に、漢字を入力させるような場合など)



> Asciiコードと同じではない見たいです。
KeyPress イベントの KeyAscii 引数が ASCII コード。
KeyDown/KeyUp イベントの引数がキーコードに相当します。
ASCII と一致するもの(A〜Z など)もありますが、基本的には別物ですね。


http://msdn.microsoft.com/ja-jp/library/gg153546.aspx

》一般に、仮想キー コードは、ASCII コードなどの他の文字エンコード標準には
》対応づけられていません。同じキーで異なる文字が入力される点や、
》ファンクション キーなどの一部のキーはどの文字にも対応していないことを
》考えれば、このことは明らかです。
》ただし、次の仮想キー コードは、相当する ASCII 値とマッピングされています。
》 ・ 0 〜 9 のキー = ASCII 値の '0' 〜 '9' (0x30 〜 0x39)
》 ・ A 〜 Z のキー = ASCII 値の 'A' 〜 'Z' (0x41 〜 0x5A)
》このマッピングはある意味で混乱の元になります。先ほど説明したように、
》仮想キー コードは決して文字と解釈するべきではないためです。



> 先に「お行儀が悪い」とおっしゃっていた
> 貼り付け機能を使えれば そちらのほうが楽なのかもしれません
そうかも知れませんね。クリップボード経由で行うのなら、
[Shift]+[Insert] か [Ctrl]+[V] を送出すればいけそうです。
貼り付けを禁止するように設計された Web サイトは駄目かも知れませんが。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。