Переключение на Главную Страницу Страницы: 1 [2]  ОтправитьПечать
Горячая тема (более 10 ответов) FormEx 2.5.0.0 Терминал+мышка побеждены? (число прочтений - 9741 )
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: FormEx 2.5.0.0 Терминал+мышка побеждены?
Ответ #15 - 15. Февраля 2007 :: 08:51
Печать  
Цитата:
Попробуй добавить в глобальник предопределенную процедуру обработки мыши. И глянь загрузку с включенным перехватом.

А в ней Возврат;
  
Наверх
ICQ  
IP записан
 
trdm
1c++ power user
qt1l developer
1c++ moderator
Отсутствует



Сообщений: 2343
Местоположение: г. Ростов-на-Дону
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: FormEx 2.5.0.0 Терминал+мышка побеждены?
Ответ #16 - 15. Февраля 2007 :: 09:40
Печать  
Сделаю, конечно.
Тока клиент за 23 км (( быстро не получится....
  
Наверх
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: FormEx 2.5.0.0 Терминал+мышка побеждены?
Ответ #17 - 19. Февраля 2007 :: 11:32
Печать  
trdm писал(а) 15. Февраля 2007 :: 09:40:
Сделаю, конечно.
Тока клиент за 23 км (( быстро не получится....

Попробовал?
  
Наверх
ICQ  
IP записан
 
trdm
1c++ power user
qt1l developer
1c++ moderator
Отсутствует



Сообщений: 2343
Местоположение: г. Ростов-на-Дону
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: FormEx 2.5.0.0 Терминал+мышка побеждены?
Ответ #18 - 19. Февраля 2007 :: 16:04
Печать  
vip писал(а) 19. Февраля 2007 :: 11:32:
Попробовал?

На неделе поеду попробую..
  
Наверх
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: FormEx 2.5.0.0 Терминал+мышка побеждены?
Ответ #19 - 19. Февраля 2007 :: 16:22
Печать  
trdm писал(а) 19. Февраля 2007 :: 16:04:
vip писал(а) 19. Февраля 2007 :: 11:32:
Попробовал?

На неделе поеду попробую..

Я, кстати, чтобы не ездить, в таких случаях у клиентов без белого айпишника для соединения с ними использую Hamachi.
Рекомендую.
  
Наверх
ICQ  
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: FormEx 2.5.0.0 Терминал+мышка побеждены?
Ответ #20 - 19. Февраля 2007 :: 21:50
Печать  
Проще на своем статическом ip поднять VPN сервант. Когда необходимо, оттуда один кликом иннициируют соединение, и можно работать по обычному RDP.
Но давай не забывать что до сих пор есть компании без выделенного инета Улыбка
  
Наверх
 
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: FormEx 2.5.0.0 Терминал+мышка побеждены?
Ответ #21 - 19. Февраля 2007 :: 21:53
Печать  
Цитата:
Но давай не забывать что до сих пор есть компании без выделенного инета

А я именно про них и говорю.
  
Наверх
ICQ  
IP записан
 
trdm
1c++ power user
qt1l developer
1c++ moderator
Отсутствует



Сообщений: 2343
Местоположение: г. Ростов-на-Дону
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: FormEx 2.5.0.0 Терминал+мышка побеждены?
Ответ #22 - 22. Февраля 2007 :: 14:07
Печать  
Цитата:
Объект Сервис.
ПерехватМыши(<?>)

Да тут понимаешь не так все просто.....
Мыша то нужна, то не нужна.
Решение (надеюсь правильное) мыслю таким:
В глобальнике:
Код
Выбрать все
// перехват мыши нам нужен только в определенных ситуациях....
// и НЕ НУЖЕН в подавляющем случае....
// Счетчик проверки необходимости мышиного хука,
// увеличиваем при инициализации формы в которой нам нужен перехват,
// уменьшаем, когда данная форма деструктится...
Перем глFormEx_MouseRefCounter Экспорт;

Процедура глFormEx_Mouse_Manage() Экспорт
	Попытка
		вСервис = СоздатьОбъект("Сервис");
		Если глFormEx_MouseRefCounter = 0 Тогда
			вСервис.ПерехватМыши(0);
		ИначеЕсли глFormEx_MouseRefCounter = 1 Тогда
			вСервис.ПерехватМыши(1);
		КонецЕсли;
	Исключение
		Если НазваниеНабораПрав(0) = "Администратор" Тогда
			Сообщить("[2007-02-22 16-50] "+ ОписаниеОшибки());
		КонецЕсли;
	КонецПопытки;

КонецПроцедуры // глFormEx_refMouse_Нужен()


// глFormEx_refMouse_Нужен()
// инкременируем
Процедура глFormEx_Mouse_Нужен() Экспорт
	глFormEx_MouseRefCounter = глFormEx_MouseRefCounter + 1;
	глFormEx_Mouse_Manage();
КонецПроцедуры // глFormEx_refMouse_Нужен()


// глFormEx_refMouse_Нужен()
// декременируем, проверяем
Процедура глFormEx_Mouse_НеНужен() Экспорт
	глFormEx_MouseRefCounter = глFormEx_MouseRefCounter - 1;
	глFormEx_Mouse_Manage();
	Если глFormEx_MouseRefCounter<0 Тогда
	    Сообщить("[2007-02-22 16-56] Возможно ошибочный декремент. Сообщите программисту о данном сообщении!");
	КонецЕсли;
КонецПроцедуры // глFormEx_refMouse_Нужен()

Процедура ПриНачалеРаботыСистемы()
	......
	глFormEx_MouseRefCounter = 0;
	глFormEx_Mouse_Manage();
КонецПроцедуры
 



в классе "Общие.Форма.Привязка" // конечно, если не используется мышь в др. местах...
Код
Выбрать все
Процедура Конструктор()
	РасширениеФормы=Сам(Контекст).ПолучитьБазовыйКласс("РасширениеФормы");
	.......
	глFormEx_Mouse_Нужен(); //<<<
	......
КонецПроцедуры

Процедура Деструктор()
	глFormEx_Mouse_НеНужен();//<<<
КонецПроцедуры
 


Вот такое энерго-сберегающее решение. Нормально?

  
Наверх
IP записан
 
trdm
1c++ power user
qt1l developer
1c++ moderator
Отсутствует



Сообщений: 2343
Местоположение: г. Ростов-на-Дону
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: FormEx 2.5.0.0 Терминал+мышка побеждены?
Ответ #23 - 22. Февраля 2007 :: 14:16
Печать  
А вообще лучше конечно такие вещи делать внутри компоненты, к примеру:
вСервис.ПодключитьОбработкуМыши(вФорма);
где:
вФорма - объект "Форма" или пустое значение, соответствующее главному окну 1С...
а внутри обрабатывать событие изничтожения окна хукопотребителя....
ПС, кстати гугл нашел всего 2 вхождения слова "ПерехватМыши". А с этим сообщением будет 3-4 )))
  
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1 [2] 
ОтправитьПечать