SSTabコントロールを貼り付けたフォームのKeyupイベントが二回発生してしまう。右揃えを行ったテキストボックスのKeyDownイベントで他のコントロールへSetFocusしても上手くいかない・・・って文章にしても解かりにくいですね。具体的には
こんなフォームがあったとしてテキストボックスのKeyDownイベントで
※テキストボックスのAlignmentプロパティは右揃え、MultilineプロパティはTrueに設定しておきます
Private SubText1_KeyDown(KeyCodeAs Integer, ShiftAs Integer)
IfKeyCode = vbKeyDownThen
Text2.SetFocus
End If
End Sub
Private SubText2_KeyDown(KeyCodeAs Integer, ShiftAs Integer)
IfKeyCode = vbKeyDownThen
Text1.SetFocus
End If
End Sub
こんな風にSetFocusしても上手く動作しません。そんな時は
Private SubText1_KeyDown(KeyCodeAs Integer, ShiftAs Integer)
IfKeyCode = vbKeyDownThen
Text2.SetFocus
KeyCode = 0
End If
End Sub
Private SubText2_KeyDown(KeyCodeAs Integer, ShiftAs Integer)
IfKeyCode = vbKeyDownThen
Text1.SetFocus
KeyCode = 0
End If
End Sub
としてやれば思い通りに動作します。結局、一回KeyDownイベントが発生したらKeyのイベントはもう無し!としてあげるのです。
DownLoad vbtips082.lzh 2KB (VB6.0)