powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как запретить вставку Ctrl+V в TextBox или ComboBox
5 сообщений из 5, страница 1 из 1
Как запретить вставку Ctrl+V в TextBox или ComboBox
    #32869009
Andre®®®
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В частности мне нужно чтобы юзер мог ввести в TextBox или ComboBox только цифры, как показано в коде, однако это меня не спасает от копирования и вставки букв.
Напишите кто знает как решить данный вопрос. Заранее благодарен.


Код: plaintext
1.
2.
3.
4.
Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim BkString As String
BkString$ = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz !@#$%^&*()_-+={}[],.\|/<>l;':""?'"
If InStr( 1 , BkString$, Chr(KeyAscii)) >  0  Then KeyAscii =  0 
End Sub
...
Рейтинг: 0 / 0
Как запретить вставку Ctrl+V в TextBox или ComboBox
    #32869191
Фотография _bob
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
используй Text1_KeyDown(KeyCode As Integer, Shift As Integer)

------------------
Best regards, _bob
...
Рейтинг: 0 / 0
Как запретить вставку Ctrl+V в TextBox или ComboBox
    #32869629
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andre®®®В частности мне нужно чтобы юзер мог ввести в TextBox или ComboBox только цифры, как показано в коде, однако это меня не спасает от копирования и вставки букв.
Напишите кто знает как решить данный вопрос. Заранее благодарен.


Код: plaintext
1.
2.
3.
4.
Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim BkString As String
BkString$ = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz !@#$%^&*()_-+={}[],.\|/<>l;':""?'"
If InStr( 1 , BkString$, Chr(KeyAscii)) >  0  Then KeyAscii =  0 
End Sub
Хуже того, при Locked = True можно сделать вставку из буфера, вот что по настоящему раздражает. Правда не на всех OS.
Лучше использовать другой контрол (3-х фирм), т.к. даже у Microsoft Masked Edit тоже проблемы с Copy/Paste
...
Рейтинг: 0 / 0
Как запретить вставку Ctrl+V в TextBox или ComboBox
    #32869932
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а если обрабатывать эвент "Object_Change"
должно вроде прокатить
...
Рейтинг: 0 / 0
Как запретить вставку Ctrl+V в TextBox или ComboBox
    #32872786
Andre®®®
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Решение найдено, всем спасибо.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim BkString As String
BkString$ = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz !@#$%^&*()_-+={}[],.\|/<>l;':""?'"
If InStr( 1 , BkString$, Chr(KeyAscii)) >  0  Then KeyAscii =  0 
End Sub

Private Sub Text1_Change()
Call Revision
End Sub

Private Sub Revision()
If CStr(Val(Text1.Text)) <> Text1.Text And Text1.Text <> "" Then
Text1.Text = ""
End If
End Sub

'' Можно также для запрета Popup меню поставить
Private Sub Text1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
'' вариант 1
'If Button = vbRightButton Then
'Text1.Locked = True
'Else
'Text1.Locked = False
'End If

'' вариант 2
'If Button = vbRightButton Then
'PopupMenu mnuFile, 2
'End If
End Sub
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как запретить вставку Ctrl+V в TextBox или ComboBox
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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