Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / KeyDown / 5 сообщений из 5, страница 1 из 1
05.11.2007, 14:38
    #34916681
BookTiger
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
KeyDown
Как реагировать на одну клавишу понятно,примеров много, а вот ка две ненайду
Надо Ctrl+S

Код: plaintext
1.
2.
3.
4.
5.
Private Sub DataGrid1_KeyDown(KeyCode As Integer, Shift As Integer)
    If KeyCode = vbKeyControl Then
      MsgBox KeyCode
    KeyCode =  0 
    End If
End Sub

пробовал так, реагирует только на первую (17):
Код: plaintext
1.
2.
3.
4.
5.
Private Sub DataGrid1_KeyDown(KeyCode As Integer, Shift As Integer)
    If KeyCode = vbKeyControl And Shift = vbKeyS Then
      MsgBox KeyCode & Shift
    KeyCode =  0 
    End If
End Sub
...
Рейтинг: 0 / 0
05.11.2007, 15:13
    #34916728
VladConn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
KeyDown
KeyDown, KeyUp Events Example
This example demonstrates a generic keyboard handler that responds to the F2 key and to all the associated ALT, SHIFT, and CTRL key combinations. The key constants are listed in the Visual Basic (VB) object library in the Object Browser. To try this example, paste the code into the Declarations section of a form that contains a TextBox control, and then press F5 and press F2 with various combinations of the ALT, SHIFT, and CTRL keys.

Private Sub Text1_KeyDown (KeyCode As Integer, Shift As Integer)
Dim ShiftDown, AltDown, CtrlDown, Txt
ShiftDown = (Shift And vbShiftMask) > 0
AltDown = (Shift And vbAltMask) > 0
CtrlDown = (Shift And vbCtrlMask) > 0
If KeyCode = vbKeyF2 Then ' Display key combinations.
If ShiftDown And CtrlDown And AltDown Then
Txt = "SHIFT+CTRL+ALT+F2."
ElseIf ShiftDown And AltDown Then
Txt = "SHIFT+ALT+F2."
ElseIf ShiftDown And CtrlDown Then
Txt = "SHIFT+CTRL+F2."
ElseIf CtrlDown And AltDown Then
Txt = "CTRL+ALT+F2."
ElseIf ShiftDown Then
Txt = "SHIFT+F2."
ElseIf CtrlDown Then
Txt = "CTRL+F2."
ElseIf AltDown Then
Txt = "ALT+F2."
ElseIf SHIFT = 0 Then
Txt = "F2."
End If
Text1.Text = "You pressed " & Txt
End If
End Sub
...
Рейтинг: 0 / 0
05.11.2007, 15:13
    #34916729
Worobjoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
KeyDown
А что надо?
Сочетание клавишь?
Каких?
...
Рейтинг: 0 / 0
05.11.2007, 15:16
    #34916734
VladConn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
KeyDown
WorobjoffА что надо?
Сочетание клавишь?
Каких?

Клавишь - вторая форма глагола? Как можно клавить сочетание??? Может вы имеете ввиду клавиш?
...
Рейтинг: 0 / 0
05.11.2007, 15:49
    #34916815
BookTiger
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
KeyDown
В моем варианте получилось так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub DataGrid1_KeyDown(KeyCode As Integer, Shift As Integer)
    
    CtrlDown = (Shift And vbCtrlMask) >  0 
    If KeyCode = vbKeyS Then
        If CtrlDown Then
        Txt = "CTRL+S."
    End If
    MsgBox "You pressed " & Txt
    End If
End Sub

VladConn большое спасибо
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / KeyDown / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]