Быстрые клики в макросе
Li0n13 / 21.06.2011, 15:28/00:41
Форум:
Написала макрос для выполнения несложных задач (разного рода изменение размеров объектов). Для выполнения операций есть форма с кнопками. Проблема в следующем: между нажатиями на кнопки нужно выдержать паузу примерно 0,5-1 с, иначе кнопка не реагирует на нажатие. Т. е. у меня есть кнопка изменения размера на 0,5 мм (операция простая). Я быстро кликаю на нее, а она срабатывает, как будто нажатие было только одно. Можно ли обойти эти тормоза?
P.S. Corel DRAW 11 (если это важно). Задержка одинакова на машинах с разными параметрами.
Если я правильно понял... дело не в кнопке, а в том что быстрые щелчки по кнопке воспринимаются ею как событие DblClick а не Click.
О чудо! Похоже, что так и было! Уменьшила в системе время на двойной клик, и вроде как быстрее стало. Простите, а как задать действие на двойной клик по кнопке (чтобы вернуть привычные системные параметры)?
...или вообще игнорировать, что клик - дабл, а каждый клик воспринимать как отдельный...
Все функции есть в выпадающих списках в верхней части окна с кодом.
А проблема решается так:
Private Sub cmB_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call cmB_Click
End Sub
Private Sub cmB_Click()
'операции
End Sub
Как альтернативу можно использовать свойство кнопки Accelerator. Уже хорошо, но все-таки хотелось бы и мышью (для других задач).
Получилось! Спасибо! Хоть и два клика работают как один, но все равно хорошо!
Можно просто попробовать из процедуры cmB_DblClick два раза вызывать Call cmB_Click