Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
5 / 5 / 3
Регистрация: 15.01.2017
Сообщений: 586
1

Как заставить процесс работать, пока кнопка нажата?

16.02.2019, 00:27. Просмотров 1144. Ответов 7
Метки нет (Все метки)

Как заставить процесс работать, пока кнопка нажата?
Т.е.
- пользователь нажал(удерживает нажатой) кнопку - процесс выполняется;
- пользователь отпустил кнопку - процесс остановился;

Я использую:
- Win 7x64;
- Доступ - 2016;

Я пытаюсь решить мою проблему с помощью следующего кода.
Но безуспешно.
Form1
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
Option Compare Database
Option Explicit
 
Public statusBool As Boolean
Public numProc As Integer
 
' `Button pressed`.
Private Sub btnStart_Click()
        numProc = 0
        statusBool = True
        
        Call Process(statusBool, numProc)
        
End Sub
 
' Process
Public Sub Process(statusBool As Boolean, numProc As Integer)
        If statusBool = True Then
            Do
                    Sleep 1000
                    DoEvents
            Loop Until Me.txtProcessFrm = "ProcessNum - " & numProc + 1
 
           Call Process(statusBool, numProc)
        End If
        
End Sub
 
'
Private Sub btnStart_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
    statusBool = False
    numProc = 0
    Call Process(statusBool, numProc)
End Sub
Модуль "Module1"
Visual Basic
1
Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
0
Миниатюры
Как заставить процесс работать, пока кнопка нажата?  
Вложения
Тип файла: zip КнопкаНажата.zip (90.5 Кб, 0 просмотров)
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.02.2019, 00:27
Ответы с готовыми решениями:

STM32 Blue Pill, не могу заставить таймер заткнуться, пока нажата кнопка
Здравствуйте, уважаемые форумчане! Помогите пожалуйста разобраться с проблемой, не пойму, что не...

Как подключать клиентов, до тех пор пока не нажата определенная кнопка?
С помощью keyEvent. Допустим есть цикл вечный подключения клиентов while(true) { ...

Как сделать так ,что-бы действие выполнялось многократно ,пока нажата кнопка?
Если я зажму кнопку то 123 выйдет на экран только один раз.А как мне сделать так ,если я зажму...

Как сделать чтобы событие происходило пока кнопка нажата и заканчивалось, когда отпустили?
Добрый вечер, вопрос касательно Button, как сделать чтобы событие происходило пока кнопка нажата и...

7
Эксперт MS Access
26106 / 13961 / 3045
Регистрация: 28.04.2012
Сообщений: 15,327
16.02.2019, 00:43 2
Посмотреть пока не могу, поэтому схематично:
- на событии кнопка вниз взводим таймер формы и запускаем процесс
- на событии кнопка вверх таймер обнуляем и прекращаем выполнение запущенного процесса
1
5828 / 3254 / 698
Регистрация: 05.10.2016
Сообщений: 8,951
16.02.2019, 00:50 3
Цитата Сообщение от mobile Посмотреть сообщение
Посмотреть пока не могу, поэтому схематично:
- на событии кнопка вниз взводим таймер формы и запускаем процесс
- на событии кнопка вверх таймер обнуляем и прекращаем выполнение запущенного процесса
Позволю себе добавить:
+ в процессе постоянно проверяем события кнопок (а таймер работает у нас) - тут надобно отлаживать.
VBA - часто работает "впереди паровоза", но у меня подобное получалось.
И вам успехов!"
1
5828 / 3254 / 698
Регистрация: 05.10.2016
Сообщений: 8,951
16.02.2019, 09:26 4
Цитата Сообщение от Soft17 Посмотреть сообщение
Как заставить процесс работать, пока кнопка нажата?
Т.е.
- пользователь нажал(удерживает нажатой) кнопку - процесс выполняется;
- пользователь отпустил кнопку - процесс остановился;
Довольно не тривиальная задачка.
А позвольте полюбопытствовать, зачем так сложно?
Какую конкретно задачку решаем?
В программировании интерфейсов БД это не встречаться (не помню, не видел).
1
5 / 5 / 3
Регистрация: 15.01.2017
Сообщений: 586
16.02.2019, 09:39  [ТС] 5
Цитата Сообщение от Eugene-LS Посмотреть сообщение
Довольно не тривиальная задачка.
А позвольте полюбопытствовать, зачем так сложно?
Какую конкретно задачку решаем?
В программировании интерфейсов БД это не встречаться (не помню, не видел).
Не ожидал, что это будет не просто...
Просто решил по экспериментировать...

Предложенные вами с mobile варианты пока не прорабатывал..
Пробую пока что-то сделать на основе "DoEvents".
0
5828 / 3254 / 698
Регистрация: 05.10.2016
Сообщений: 8,951
16.02.2019, 09:52 6
Цитата Сообщение от Soft17 Посмотреть сообщение
Предложенные вами с mobile варианты пока не прорабатывал..
За ув. mobile, не скажу, но я пока вариантов решения не предлагал, написал просто "Похожее".
Извините , но вы так и не ответили на вопрос "Зачем?". с вероятностью 90% - думаю, что можно решить проще, и не изобретать "велосипед".
0
Мы один, давай на "ты"
2179 / 922 / 213
Регистрация: 16.06.2016
Сообщений: 2,010
16.02.2019, 11:41 7
Лучший ответ Сообщение было отмечено Soft17 как решение

Решение

Цитата Сообщение от Soft17 Посмотреть сообщение
Как заставить процесс работать, пока кнопка нажата?
в свойствах кнопки:
Автоматический повтор=Да

AutoRepeat
1
292 / 253 / 67
Регистрация: 18.06.2015
Сообщений: 570
18.02.2019, 09:18 8
Задержка через рекурсивный вызов? Это сильно. Большая вероятность, что Акцесс просто рухнет
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.02.2019, 09:18

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

пока нажата кнопка. !
Имеются допустим 2 кнопки на каждую из них при нажатии выполняется действие . Проблема заключается...

Действие пока нажата кнопка
Всем привет, у меня такой вот вопрос. Как сделать проверку на нажатую кнопку на клавиатуре?...

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

Пока кнопка не нажата выполнять действия
Хочу реализовать скрытие меню в программе, пока не нажата кнопка авторизации. Понимаю, что нужно...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.