Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Событие двойного клика по объекту - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Событие двойного клика по объекту (Макросы/Sub)
Событие двойного клика по объекту
t330 Дата: Пятница, 15.03.2019, 03:33 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 103
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Есть код Перемещения элементов списка (см файл) (из Уокенбаха)
В нем есть процедура обработки двойного щелчка мышью на на кнопке вверх (MoveUpButton)

Объясните пожалуйста кому не лень строку выделенную жирным
Что за загадочный аргумент в этой процедуре в скобках и для чего он нужен?:
(ByVal Cancel As MSForms.ReturnBoolean)

[vba]
Код

Private Sub MoveUpButton_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox1.Text = "Произведен двойной щелчок"
    Call MoveUpButton_Click
End Sub

[/vba]
К сообщению приложен файл: listbox_move_it.xlsm(19.0 Kb)


Сообщение отредактировал t330 - Пятница, 15.03.2019, 14:37
 
Ответить
СообщениеЕсть код Перемещения элементов списка (см файл) (из Уокенбаха)
В нем есть процедура обработки двойного щелчка мышью на на кнопке вверх (MoveUpButton)

Объясните пожалуйста кому не лень строку выделенную жирным
Что за загадочный аргумент в этой процедуре в скобках и для чего он нужен?:
(ByVal Cancel As MSForms.ReturnBoolean)

[vba]
Код

Private Sub MoveUpButton_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox1.Text = "Произведен двойной щелчок"
    Call MoveUpButton_Click
End Sub

[/vba]

Автор - t330
Дата добавления - 15.03.2019 в 03:33
bmv98rus Дата: Пятница, 15.03.2019, 08:01 | Сообщение № 2
Группа: Проверенные
Ранг: Участник клуба
Сообщений: 2725
Репутация: 470 ±
Замечаний: 0% ±

Excel 2013/2016
Cancel - отмена. Если в TRUE установить, то по завершению собственного кода, отменяется стандартное действие по этому событию, предусмотренное приложением.


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
СообщениеCancel - отмена. Если в TRUE установить, то по завершению собственного кода, отменяется стандартное действие по этому событию, предусмотренное приложением.

Автор - bmv98rus
Дата добавления - 15.03.2019 в 08:01
_Boroda_ Дата: Пятница, 15.03.2019, 09:34 | Сообщение № 3
Группа: Модераторы
Ранг: Местный житель
Сообщений: 15577
Репутация: 6079 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Справка для листа для Worksheet_BeforeDoubleClick https://docs.microsoft.com/en-us....leclick Перевод переводчиком вроде нормально переводится
В части Cancel никаких отличий нет

А лишняя строка

Не, стоп, не заметил сразу - Руслан, исправляйте название темы и раскидывайте вопросы на две темы. Вы что, Правила форума не читали?


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеСправка для листа для Worksheet_BeforeDoubleClick https://docs.microsoft.com/en-us....leclick Перевод переводчиком вроде нормально переводится
В части Cancel никаких отличий нет

А лишняя строка

Не, стоп, не заметил сразу - Руслан, исправляйте название темы и раскидывайте вопросы на две темы. Вы что, Правила форума не читали?

Автор - _Boroda_
Дата добавления - 15.03.2019 в 09:34
bmv98rus Дата: Пятница, 15.03.2019, 11:42 | Сообщение № 4
Группа: Проверенные
Ранг: Участник клуба
Сообщений: 2725
Репутация: 470 ±
Замечаний: 0% ±

Excel 2013/2016
Перевод переводчиком вроде нормально переводится

даже встроенным
https://docs.microsoft.com/ru-ru....leclick


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
Сообщение
Перевод переводчиком вроде нормально переводится

даже встроенным
https://docs.microsoft.com/ru-ru....leclick

Автор - bmv98rus
Дата добавления - 15.03.2019 в 11:42
t330 Дата: Пятница, 15.03.2019, 14:56 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 103
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
даже встроенным
https://u.to/FBHnFA


Коллеги.
Я прекрасно умею пользовать справку мелкософта, в том числе и без перевода и более того, прежде, чем задавать вопрос на этом форуме, ищу в яндексе ответ на свой вопрос , потому что это быстрее, чем ждать ответ на форуме.
И только после того, как в силу своего тугодумия, мне не стал ясен ответ на вопрос, пощу его здесь, в надежде на чей-то педагогический талант для тугодумов:)

Сейчас ввел в код Cancel = True , закомментил вывзов процедуры события на одинарный клик и все равно при двойном щелчке элемент списка двигается вверх и в Текстовом поле (TextBox1) появляется надпись "Произведен двойной щелчок", то есть Процедура
[vba]
Код
Private Sub MoveUpButton_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
[/vba] все равно срабатывает...
Такой же результат получается , если поставить Cancel = False. Никакой разницы...

[vba]
Код

Private Sub MoveUpButton_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    Cancel = True
    TextBox1.Text = "Произведен двойной щелчок"
   
    'Call MoveUpButton_Click
End Sub
[/vba]
К сообщению приложен файл: 2238857.xlsm(19.0 Kb)


Сообщение отредактировал t330 - Пятница, 15.03.2019, 14:57
 
Ответить
Сообщение
даже встроенным
https://u.to/FBHnFA


Коллеги.
Я прекрасно умею пользовать справку мелкософта, в том числе и без перевода и более того, прежде, чем задавать вопрос на этом форуме, ищу в яндексе ответ на свой вопрос , потому что это быстрее, чем ждать ответ на форуме.
И только после того, как в силу своего тугодумия, мне не стал ясен ответ на вопрос, пощу его здесь, в надежде на чей-то педагогический талант для тугодумов:)

Сейчас ввел в код Cancel = True , закомментил вывзов процедуры события на одинарный клик и все равно при двойном щелчке элемент списка двигается вверх и в Текстовом поле (TextBox1) появляется надпись "Произведен двойной щелчок", то есть Процедура
[vba]
Код
Private Sub MoveUpButton_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
[/vba] все равно срабатывает...
Такой же результат получается , если поставить Cancel = False. Никакой разницы...

[vba]
Код

Private Sub MoveUpButton_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    Cancel = True
    TextBox1.Text = "Произведен двойной щелчок"
   
    'Call MoveUpButton_Click
End Sub
[/vba]

Автор - t330
Дата добавления - 15.03.2019 в 14:56
Karataev Дата: Пятница, 15.03.2019, 23:16 | Сообщение № 6
Группа: Проверенные
Ранг: Старожил
Сообщений: 1327
Репутация: 527 ±
Замечаний: 0% ±

Excel
Cancel в событии "DblClick" отключает второй щелчок. То есть Windows не обрабатывает второй щелчок.
Это видно на "ToggleButton" (об этом написано в справке: сайт).
Для остальных элементов управления эффекта от Cancel нет (мой вывод). Просто событие "DblClick" сделано одно на все элементы управления.
Ну или ждите ситуации, когда Вам будет мешать второй щелчок при двойном щелчке. Может быть в какой-то ситуации это будет не только в "ToggleButton".
Если Вам сейчас не мешает второй щелчок, значит Cancel не нужно использовать. Если станет мешать, то используйте Cancel.


Киви-кошелек: 9166309108
Яндекс-деньги: 410014131888288


Сообщение отредактировал Karataev - Пятница, 15.03.2019, 23:20
 
Ответить
СообщениеCancel в событии "DblClick" отключает второй щелчок. То есть Windows не обрабатывает второй щелчок.
Это видно на "ToggleButton" (об этом написано в справке: сайт).
Для остальных элементов управления эффекта от Cancel нет (мой вывод). Просто событие "DblClick" сделано одно на все элементы управления.
Ну или ждите ситуации, когда Вам будет мешать второй щелчок при двойном щелчке. Может быть в какой-то ситуации это будет не только в "ToggleButton".
Если Вам сейчас не мешает второй щелчок, значит Cancel не нужно использовать. Если станет мешать, то используйте Cancel.

Автор - Karataev
Дата добавления - 15.03.2019 в 23:16
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Событие двойного клика по объекту (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс цитирования
© 2010-2019 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!