Переключение на Главную Страницу Страницы: [1] 2 3 ... 5 ОтправитьПечать
Очень популярная тема (более 25 ответов) Как определить, что кликнули на пустом месте? (число прочтений - 17493 )
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 854
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Как определить, что кликнули на пустом месте?
11. Сентября 2013 :: 07:49
Печать  
Т.е. кликнули на рабочем поле и под курсором ничего не должно быть - ни формы, ни таблицы, ни текста?

Форму еще можно отловить по контексту в ПриНажатииПравойКнопки(). А таблицу как определить, или окно с текстом?
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Как определить, что кликнули на пустом месте?
Ответ #1 - 11. Сентября 2013 :: 08:21
Печать  
к таблице можно прицепить МенеджерТабличногоДокумента из tabledoc - там есть события
извиняюсь не сразу понял, что требуется
  

1&&2&&3
Наверх
 
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 854
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Как определить, что кликнули на пустом месте?
Ответ #2 - 11. Сентября 2013 :: 08:50
Печать  
Вот тут нашел скрипт по определению всех открытых дочерних окон: http://www.forum.mista.ru/topic.php?id=397261

Теперь бы определить координаты этих окон. Тогда определить - куда кликнули - секундное дело.
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 854
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Как определить, что кликнули на пустом месте?
Ответ #3 - 11. Сентября 2013 :: 10:27
Печать  
Ага, а как координаты окна по хендлу находить - см. здесь: http://www.1cpp.ru/forum/YaBB.pl?num=1227526095
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Как определить, что кликнули на пустом месте?
Ответ #4 - 11. Сентября 2013 :: 11:49
Печать  
В итоге решил?
  
Наверх
 
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 854
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Как определить, что кликнули на пустом месте?
Ответ #5 - 11. Сентября 2013 :: 11:53
Печать  
Почти.

Сразу после загрузки 1С скрипт почему-то показывает в ТЗ те окна, которые были открыты в предыдущем сеансе. Как это???

Хотя в реальности ничего не открыто.
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Как определить, что кликнули на пустом месте?
Ответ #6 - 11. Сентября 2013 :: 12:02
Печать  
Что-то там слишком мудрено.
Тебе какой список окон нужен?
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Как определить, что кликнули на пустом месте?
Ответ #7 - 11. Сентября 2013 :: 12:20
Печать  
alyuev писал(а) 11. Сентября 2013 :: 08:50:
Вот тут нашел скрипт по определению всех открытых дочерних окон

а не MDI окна не интересуют? модальнооткрытые формы и прочие диалоги
  

1&&2&&3
Наверх
 
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 854
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Как определить, что кликнули на пустом месте?
Ответ #8 - 11. Сентября 2013 :: 12:29
Печать  
Тоже интересуют. Т.к. нужно отловить клик на пустом рабочем поле.
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Как определить, что кликнули на пустом месте?
Ответ #9 - 11. Сентября 2013 :: 13:27
Печать  
alyuev писал(а) 11. Сентября 2013 :: 12:29:
Тоже интересуют. Т.к. нужно отловить клик на пустом рабочем поле.


А ты ловишь нажатие глобальной процедурой "ПриНажатииКнопкиМыши"?
  
Наверх
 
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 854
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Как определить, что кликнули на пустом месте?
Ответ #10 - 11. Сентября 2013 :: 13:55
Печать  
Да. ПриНажатииЛевойКнопки() или ПриНажатииПравойКнопки().
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Как определить, что кликнули на пустом месте?
Ответ #11 - 11. Сентября 2013 :: 14:03
Печать  
alyuev писал(а) 11. Сентября 2013 :: 13:55:
Да. ПриНажатииЛевойКнопки() или ПриНажатииПравойКнопки().

А в результате что нужно получить - хэндл окна по которому щелкнули?
  
Наверх
 
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 854
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Как определить, что кликнули на пустом месте?
Ответ #12 - 11. Сентября 2013 :: 14:30
Печать  
В результате клика нужно узнать, что под курсором ничего нет, т.е. в координатах клика нет ни одного дочернего окна.!
Просто рабочее поле.
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Как определить, что кликнули на пустом месте?
Ответ #13 - 11. Сентября 2013 :: 18:51
Печать  
Рабочее поле это MDI окно?
  
Наверх
 
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 854
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Как определить, что кликнули на пустом месте?
Ответ #14 - 12. Сентября 2013 :: 08:14
Печать  
Стрелкой показал на скриншоте
  

RabPole.jpg ( 12 KB | Загрузки )
RabPole.jpg

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 3 ... 5
ОтправитьПечать