Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.54/37: Рейтинг темы: голосов - 37, средняя оценка - 4.54
1 / 1 / 0
Регистрация: 30.07.2011
Сообщений: 65

Отключение функция кнопок

18.08.2011, 15:23. Показов 8145. Ответов 23
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день. Подскажите пожалуйста, как можно отключить нажатие кнопок в форме?
т.е. чтобы при нажатие кнопок ни чего не происходило, например чтобы нельзя было прокручивать скролом записи.

Зарание спасибо!
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.08.2011, 15:23
Ответы с готовыми решениями:

Отключение аппаратных кнопок
Как сделать так, чтобы при нажатии кнопки Power не включался экран блокировки ?

Отключение всех кнопок окна
Всем привет! Нарисовалась задачка отключить все оконные кнопки Access. В найденных примерах фигурирует кнопка закрытия приложения, а...

Отключение кнопок перемещения по дереву
Суть такова нужно чтобы по дереву я мог передвигаться 2 кнопками вверх и вних(вперед и назад) и когда мы доходим до последнего элемента в...

23
3 / 3 / 0
Регистрация: 15.08.2011
Сообщений: 102
19.08.2011, 17:41
Студворк — интернет-сервис помощи студентам
мне кажется, Tigran имеет в виду отключение скролла в самой базе, чтобы после добавления в базу нельзя было прокрутить вверх. тогда надо еще и все кнопки прокрутки типа стрелок, end, home, page up & down блокировать

Добавлено через 3 часа 15 минут
нашел тут кое-что, но на англицком
Start Microsoft Access.
Open the sample database Northwind.mdb.
On the Insert menu, click Module to create a new module in the Visual Basic Editor.
Add the following code to the module:
Option Compare Database
код:

Visual Basic
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
Option Explicit
 
Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
 
    (ByVal hwnd As Long, _
 
    ByVal nIndex As Long, _
 
    ByVal dwNewLong As Long) As Long
 
 
 
Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" _
 
    (ByVal lpPrevWndFunc As Long, _
 
     ByVal hwnd As Long, _
 
     ByVal msg As Long, _
 
     ByVal wParam As Long, _
 
     ByVal lParam As Long) As Long
 
      
 
Public Const GWL_WNDPROC = -4
 
Public Const WM_MouseWheel = &H20A
 
Public lpPrevWndProc As Long
 
Public CMouse As CMouseWheel
 
 
 
Public Function WindowProc(ByVal hwnd As Long, _
 
    ByVal uMsg As Long, _
 
    ByVal wParam As Long, _
 
    ByVal lParam As Long) As Long
 
 
 
    'Look at the message passed to the window. If it is'
 
    'a mouse wheel message, call the FireMouseWheel procedure'
 
    'in the CMouseWheel class, which in turn raises the MouseWheel'
 
    'event. If the Cancel argument in the form event procedure is'
 
    'set to False, then we process the message normally, otherwise'
 
    'we ignore it.  If the message is something other than the mouse'
 
    'wheel, then process it normally'
 
    Select Case uMsg
 
        Case WM_MouseWheel
 
            CMouse.FireMouseWheel
 
            If CMouse.MouseWheelCancel = False Then
 
                WindowProc = CallWindowProc(lpPrevWndProc, hwnd, uMsg, wParam, lParam)
 
            End If
 
           
 
        Case Else
 
           WindowProc = CallWindowProc(lpPrevWndProc, hwnd, uMsg, wParam, lParam)
 
    End Select
 
End Function


On the File menu, click Save <project name>. Save the module as basSubClassWindow.
On the Insert menu, click Class Module.
Add the following code to the class module:
код:

Visual Basic
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
Option Compare Database
 
Option Explicit
 
 
 
Private frm As Access.Form
 
Private intCancel As Integer
 
Public Event MouseWheel(Cancel As Integer)
 
 
 
Public Property Set Form(frmIn As Access.Form)
 
    'Define Property procedure for the class which'
 
    'allows us to set the Form object we are'
 
    'using with it. This property is set from the'
 
    'form class module.'
 
    Set frm = frmIn
 
End Property
 
 
 
Public Property Get MouseWheelCancel() As Integer
 
    'Define Property procedure for the class which'
 
    'allows us to retrieve whether or not the Form'
 
    'event procedure canceled the MouseWheel event.'
 
    'This property is retrieved by the WindowProc'
 
    'function in the standard basSubClassWindow'
 
    'module.'
 
 
 
    MouseWheelCancel = intCancel
 
End Property
 
 
 
Public Sub SubClassHookForm()
 
    'Called from the forms OnOpen or OnLoad'
 
    'event. This procedure is what "hooks" or'
 
    'subclasses the form window. If you hook the'
 
    'the form window, you must unhook it when completed'
 
    'or Access will crash.'
 
    
 
    lpPrevWndProc = SetWindowLong(frm.hwnd, GWL_WNDPROC, _
 
                                    AddressOf WindowProc)
 
      Set CMouse = Me
 
   End Sub
 
 
 
Public Sub SubClassUnHookForm()
 
    'Called from the forms OnClose event.'
 
    'This procedure must be called to unhook the'
 
    'form window if the SubClassHookForm procedure'
 
    'has previously been called. Otherwise, Access will'
 
    'crash.'
 
 
 
    Call SetWindowLong(frm.hwnd, GWL_WNDPROC, lpPrevWndProc)
 
End Sub
 
 
 
Public Sub FireMouseWheel()
 
 
 
    'Called from the WindowProc function in the'
 
    'basSubClassWindow module. Used to raise the '
 
    'MouseWheel event when the WindowProc function'
 
    'intercepts a mouse wheel message.'
 
    RaiseEvent MouseWheel(intCancel)
 
End Sub


On the File menu, click Save <project name>. Save the class module as CMouseWheel.
Open the Customers form in Design view.
On the View menu, click Code to view the class module of the form.
Add the following code to the class module of the form:
код:

Visual Basic
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
Option Compare Database
 
Option Explicit
 
 
 
'Declare a module level variable as the custom class'
 
'and give us access to the class's events'
 
Private WithEvents clsMouseWheel As CMouseWheel
 
 
 
Private Sub Form_Load()
 
    'Create a new instance of the class,'
 
    'and set the class's Form property to'
 
    'the current form  '
 
    Set clsMouseWheel = New CMouseWheel
 
    Set clsMouseWheel.Form = Me
 
 
 
    'Subclass the current form by calling'
 
    'the SubClassHookForm method in the class'
 
    clsMouseWheel.SubClassHookForm
 
End Sub
 
 
 
Private Sub Form_Close()
 
    'Unhook the form by calling the '
 
    'SubClassUnhook form method in the '
 
    'class, and then destroy the object'
 
    'variable'
 
  
 
    clsMouseWheel.SubClassUnHookForm
 
    Set clsMouseWheel.Form = Nothing
 
    Set clsMouseWheel = Nothing
 
End Sub
 
 
 
Private Sub clsMouseWheel_MouseWheel(Cancel As Integer)
 
     'This is the event procedure where you can'
 
     'decide what to do when the user rolls the mouse.'
 
     'If setting Cancel = True, we disable the mouse wheel'
 
     'in this form.'
 
 
 
     MsgBox "You cannot use the mouse wheel to scroll through records."
 
     Cancel = True
 
End Sub


On the File menu, click Close and Return to Microsoft Access.
Save the form, and then close it.

NOTE: Do not open the form in Form view at this time. If you do, Microsoft Access will stop responding because the Visual Basic Editor has been loaded.
Quit Microsoft Access.
Restart Microsoft Access, and open the sample database Northwind.mdb.
Open the Customers form in Form view.
Roll the mouse wheel
1
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
19.08.2011, 18:49
Скрол "scroll" колесико мыши! когда создается запись колесиком можно прокручивать записи, а мне это не надо!!! как это можно убрать!
Самый надёжный вариант - найти мышу без колёсика. На крайняк выдрать и выкинуть из рабочей!!
0
3 / 3 / 0
Регистрация: 15.08.2011
Сообщений: 102
19.08.2011, 19:26
Цитата Сообщение от Alex77755 Посмотреть сообщение
Самый надёжный вариант - найти мышу без колёсика. На крайняк выдрать и выкинуть из рабочей!!
это я уже писал. см. #15
0
1 / 1 / 0
Регистрация: 30.07.2011
Сообщений: 65
19.08.2011, 19:33  [ТС]
Цитата Сообщение от eutelg Посмотреть сообщение
мне кажется, Tigran имеет в виду отключение скролла в самой базе, чтобы после добавления в базу нельзя было прокрутить вверх. тогда надо еще и все кнопки прокрутки типа стрелок, end, home, page up & down блокировать...
вот это уже ближе. завтра по копаюсь!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.08.2011, 19:33

Отключение кнопок, не участвующих в вводе
День добрый. Будьте любезны. Подскажите. Ни как не могу сообразить. Есть скажем набор кнопок. А К О Н Т И П Р Л С. В листбоксе набор...

Периодическое отключение части кнопок на ноутбуке
Acer aspire e5-571g-55tr Периодически отключаются кнопки клавиатуры на ноутбуке. Кнопки Ч,С, Ф, А, О, И. Причем проблема приходит во...

отключение кнопок в диалоговом окне безопасность в windows xp
Нужно на компьтерах work1, work2 отключить кнопоки в диалоговом окне безопасность (Блокировка, Смена пароля, диспечер задач), windows xp....

Динамическое создание кнопок + функция
Доброго времени суток! К примеру в цикле формирую кучу кнопок, мне надо чтобы каждая выполняла свою задачу. И так подробнее: к...

Функция заменяющая нажатие кнопок на клавиатуре
Доброе утро/день/вечер! Нужна обычная кнопка, но с необычным(м.б.) параметром. Она должна заменять нажатие клавиш на клавиатуре. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
24
Ответ Создать тему
Новые блоги и статьи
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации: 1. Вернуть возможность использования знаков | 1 l I;. . .
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С. Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию? Фраза «Любая достаточно развитая технология неотличима от магии». . .
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль? Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология. «Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки. Добавлены следующие реквизиты типа Булево: - Буквы; - Цифры; - Символы. Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей. Самым главным критерием для. . .
Установка ChatGPT (Codex) на Windows без использования Microsoft Store
Fabien159 28.10.2026
Здравствуйте всем читающим! Опишу процесс установки ChatGPT (Codex) на Windows, если по каким-то причинам у вас не получается устанавить его через Microsoft Store. И так: 1. Скачиваем с. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru