Страница: 1 |
Страница: 1 |
Вопрос: Устранение проблем DblClick
Добавлено: 28.12.05 02:28
Автор вопроса: Victor | Web-сайт:
Кто-нибудь знает, как можно получать и дабл-клики, и неискаженные сообщения о щелчках?
Вообще говоря, мне дабл-клики не нужны, но:
известный способ написать в событии Click код типа SendKeys Chr(0) глючит. Глюк такой: форме посылается KeyPress с клавишей '2' (код 50 (decimal)). И к тому же с сочетанием Ctrl+Shift. Самое смешное, что раньше этого не было, все началось после того, как я установил поддержку китайских шрифтов. Я не собираюсь прописывать исключение этого нажатия во всех формах, кроме того, моя программа поддерживает настройку сочетаний и что же будет, если юзер выберет именно такое сочетание...
SendKeys написан в моей собственной кнопочке, которая является Windowless контролом.
Я думал установить Window Style так, чтобы окно не получало dblclick-ов, но вспомнил, что у меня WindowLess. Я не хочу убирать этот WindowLess, чтобы конпка была легкой, а лишать контейнер возможности получать даблклики в общем случае не стоит.
Ответы
Всего ответов: 5
Номер ответа: 1
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #1
Добавлено: 28.12.05 12:16
Нифига не понял!
А в чем проблема? Кстати, кто мешает привязаться, скажем, к MouseUp?
Если не нужен даблклик - глуши его в сабклассе.
Остальное - вообще какая-то ересь...
Номер ответа: 2
Автор ответа:
Victor
ICQ: 345743490
Вопросов: 42
Ответов: 385
Web-сайт:
Профиль | | #2
Добавлено: 28.12.05 14:58
А как же MouseDown? Кнопка не продавливается.
Это как?
Номер ответа: 3
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #3
Добавлено: 28.12.05 15:21
Что значит кнопка не продавливается? Нифига не понимаю...
По поводу сабкласса уже уйма примеров. В модуле пишешь функцию, которая будет фильтровать сообщения. И, скажем, заменять DblClick на Click.
Хм... А от мего тогда ты ловишь сообщения. От формы что ли? Да, трудно под Новый Год понять некоторые вещи...
Номер ответа: 4
Автор ответа:
Victor
ICQ: 345743490
Вопросов: 42
Ответов: 385
Web-сайт:
Профиль | | #4
Добавлено: 29.12.05 00:06
Я не ловлю сообщения, их VB ловит. Как уж он это делает, я не очень знаю, почитай хелп к событию HitTest если тебе это интересно.
СабКлассинг - это чтоли замена оконной процедуры обработки сообщений? тогда ясно. Вообще я это делаю хуками.
Короче сам разобрался вроде. Помогла подсказка о том, что MouseUp срабатывает. А для несрабатывающего MouseDown можно использовать DblClick.
Номер ответа: 5
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #5
Добавлено: 29.12.05 11:14
Рад за тебя, но не уверен что имеет смысл использовать Windowless кнопку. Себе проблем наживаешь