コンボボックスにあらかじめ設定されてありました内容を
DELETEキーを押すことにより消去後、元の内容に戻したいのですが
下記のように記述してもできません。
Private Sub Combo1_KeyDown(KeyCode As Integer, Shift As Integer)
Dim wrk1 As String
wrk1 = Combo1.Text
If KeyCode = vbKeyDelete Then
Beep
MsgBox "削除はできません"
Combo1.Text = wrk1
End If
End Sub
ご教授お願いします。
>Dim wrk1 As String
>wrk1 = Combo1.Text
ここでコンボボックスのリストインデックスを取ってみてはどうでしょう?
(><)さんご返信ありがとうございました。
下記のようにリストインデックスを取りやりましたが駄目でした。
wrk1 = Combo1.ListIndexの時点では代入されているのですが。
Private Sub Combo1_KeyDown(KeyCode As Integer, Shift As Integer)
Dim wrk1 As Integer
wrk1 = Combo1.ListIndex
If KeyCode = vbKeyDelete Then
Beep
MsgBox "削除はできません"
Combo1.ListIndex = wrk1
End If
End Sub
わー・・・何ボケてたんでしょ・・・俺。
'Dim wrk1 As Integer
'wrk1 = Combo1.ListIndex
If KeyCode = vbKeyDelete Then
KeyCode = 0 '追加
Beep
MsgBox "削除はできません"
'Combo1.ListIndex = wrk1
End If
(><) さん
ばっちりでした。
ありがとうございました。
ツイート | ![]() |