Блокировка клавиатуры

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Блокировка клавиатуры

Сообщение Vitaly1 » 14.02.2004 (Сб) 10:16

Можно ли как нибудь заблокировать, затем разблокировать, клавиатуру, или клавишу клавиатуры, для всех загруженных приложений?

young
Обычный пользователь
Обычный пользователь
 
Сообщения: 95
Зарегистрирован: 19.06.2003 (Чт) 15:12
Откуда: Липецк

Сообщение young » 14.02.2004 (Сб) 12:28

Добавь на форму CommandButton и TextBox. При однократном нажатии на кнопку, попытайся набрать какой-либо текст. Нажми второй раз, попробуй...

Dim FlagKeyb As Boolean

Private Sub Command1_Click()
FlagKeyb = Not FlagKeyb
If FlagKeyb Then
Command1.Caption = "Отключить"
Else
Command1.Caption = "Включить"
End If
Text1.SetFocus
End Sub

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If FlagKeyb Then
Else
KeyCode = 0
End If
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
If FlagKeyb Then
Else
KeyAscii = 0
End If
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
If FlagKeyb Then
Else
KeyCode = 0
End If
End Sub

Private Sub Form_Load()
FlagKeyb = True
Command1.Caption = "Отключить"
End Sub

young
Обычный пользователь
Обычный пользователь
 
Сообщения: 95
Зарегистрирован: 19.06.2003 (Чт) 15:12
Откуда: Липецк

Сообщение young » 14.02.2004 (Сб) 12:29

В 2000 и ХР не работает, есть другой, он там пахать долженг, даже мышь вырубает!

Private Declare Function BlockInput Lib "user32" (ByVal fBlock As Long) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub Form_Activate()
DoEvents
'block the mouse and keyboard input
BlockInput True
'wait 10 seconds before unblocking it
Sleep 1000
'unblock the mouse and keyboard input
BlockInput False
End Sub

Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Сообщение Vitaly1 » 14.02.2004 (Сб) 12:45

young - спасибо за примеры, но первый пример отключает клавиатуру для формы, а не для всех приложений. А второй блокирует мышь, а мне левая клавиша мыши нужна для управления CommonDialog.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 23

    TopList