初めて投稿するVB初心者です。宜しくお願い致します。
現状、2つのプロセスが存在し、1つはGKitOCX Spreadでデータの表示を行っており、
2つ目はデータ更新プロセスです。
この2つのプロセスは、KeyPressとPostMessageを使用し電文をやり取りしています。
データ表示プロセスにおいて、データを表示し任意のボタン押下により、
データの内容を変更します。この際に変更内容をPostMessageで、
データ更新プロセスに送信します。
データ更新プロセスは、KeyPressで電文を受信しその内容に従って
データの更新を行います。データ更新後、変更通知をPostMessageで送信、
データ表示プロセスは、KeyPressで電文を受信しその内容に従って
データを表示します。
問題は、データ表示プロセスがKeyPressで電文を受信するところなのですが、
GKitOCX Spreadでデータの表示をしている表のタスクバーをマウスで上下スクロールさせると
Private Sub Form_KeyPress(KeyAscii As Integer)のKeyAsciiの値がおかしくなってしまいます。
strLogStr = "0x" & Right$("00000000" & Hex$(KeyAscii), 8)として、
strLogStrの内容を確認すると、本来であれば「0x00008E12」というような
4桁になるはずが、「0x00000012」と2桁が0となってしまいます。
原因が全くわかりません。
どなたか対処法があれば教えてください。
なお環境は、
WindowsNT 4.0 Windows2000
VB6 SP5
GKitOCX Spread V4
です。
申し訳けありません。
タスクバーではなく、スクロールバーでした。
スクロールバーをマウスクリック、スクロールした場合にのみこのような現象が発生します。
KeyPressを使用せず別の方法にしました。
編集 削除