ГЛЮК?! Обработка событий нажатия кнопки мыши!!! - страница 4

 
использовать on_MouseDown вместо on_Click
 
FAQ:
использовать on_MouseDown вместо on_Click
Спасибо большое
 

СПАСИБО ПРОБЛЕМА РЕШЕНА довольно быстрым способом. 

Этот язык мне нравится еще больше!!!!

 
Vladon:

СПАСИБО ПРОБЛЕМА РЕШЕНА довольно быстрым способом. 

Этот язык мне нравится еще больше!!!! 

  Просветите

 ЗЫ. Быстро просмотрел возможные события и сразу возникло несколько мыслей по этому поводу. Интересно подтверждение. 

 

У меня тоже есть маленькая панелька.

 

Работает по клику на объекте.Дополнительно требуется нажать CTRL,как "защита от детей" .

После нажатия кнопки переводятся в false.

if(id==CHARTEVENT_OBJECT_CLICK && key==true)
     {
      if(sparam=="buy")  {Print("Нажата BUY");OpenBuy();} 
      if(sparam=="sell")  { Print("Нажата SELL");OpenSell(); }  
      if(sparam=="wl")  { Print("Нажата WL");ModifyWl();}
      if(sparam=="sellstop")  { Print("Нажата SELL STOP");SellStop();}  
      if(sparam=="buystop")  { Print("Нажата BUY STOP");BuyStop();}
      if(sparam=="delpend")  { Print("Нажата DELETE");DelPend();}
     
      ChartRedraw();
     }
  if(id==CHARTEVENT_KEYDOWN)
     {
       if(lparam==KEY_CTRL) {key=true;} else {key=false;}
     }
 // востановим кнопки
 graf_button("buy",270,5,clrBlue,"BUY",12,3,false);
 graf_button("sell",210,5,clrCrimson,"SELL",12,3,false);
 graf_button("wl",150,5,clrBlack,"WL",12,3,false);
 
 graf_button("buystop",270,30,clrDarkBlue,"B.STOP",12,3,false);
 graf_button("sellstop",150,30,clrCrimson,"S.STOP",12,3,false);
 graf_button("delpend",210,30,clrBlack,"DEL",12,3,false);
 
Karlson:

У меня тоже есть маленькая панелька.

 

Работает по клику на объекте.Дополнительно требуется нажать CTRL,как "защита от детей" .

После нажатия кнопки переводятся в false.

 

ну то понятно, я тоже так начинал:  http://codebase.mql4.com/ru/6091 

потом так: https://www.mql5.com/ru/code/223/

потом так: https://www.mql5.com/ru/market/product/332

ЗЫ, не. это не реклама. не кидайтесь в меня. Просто, дали пинок и с 2 ссылки дошел до 3 буквально за вечер. Интересно мнение.

А стоит кредитов не потому что я жадный. Денег нада. дети маленькие, запросы большие. Ну кому я рассказываю. Все в таком положении 

  

FAQ:

  Просветите

 ЗЫ. Быстро просмотрел возможные события и сразу возникло несколько мыслей по этому поводу. Интересно подтверждение. 

 

Я не использовал никакие доп библиотеки, потому что я их не люблю.!!!! Да и честно сюда я писал не для того чтоб мне дали полный код, а только дали пинок, ну как всегда :-)

Использовал обычный  

 

CHARTEVENT_MOUSE_MOVE

 При чем у него есть состояние нажатия левой кнопки, в 3 параметре выдает 1, если кнопка нажата. 

Определить  местоположение этой координаты и сравнить ее с координатой отжатия данной кнопки - 1 класс. 

 

Просто я не думал что язык МКЛ5 такой расширенный.  

 

 

 

Сейчас работаю над тасканием панели, при чем тасканием не так как у большинства панелей - нажимаешь кнопку потом за маленький квадратик который даже не видно - тащишь его потом отпускаешь кнопку - и оп все пере рисовалось.

Я сделал что вся панель тащится за курсором пока он не отжат, но блин как сделать чтобы он больше не тащил при нажатии на кнопку? :-)

вроде бы можно сказать ::

Тю да это же легко -

не легко :-) а вся проблема в том что одновременно два собитя он не обрабатывает.  

 
Vladon:

Сейчас работаю над тасканием панели, при чем тасканием не так как у большинства панелей - нажимаешь кнопку потом за маленький квадратик который даже не видно - тащишь его потом отпускаешь кнопку - и оп все пере рисовалось.


не легко :-) а вся проблема в том что одновременно два собитя он не обрабатывает.  

Может проще воспользоваться Стандартной библиотекой? Посмотрите пример - Controls.mq5 от MQ.
Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
 

Vladon:

Я сделал что вся панель тащится за курсором пока он не отжат, но блин как сделать чтобы он больше не тащил при нажатии на кнопку? :-)

про какую кнопку речь?
 
sergeev:
про какую кнопку речь?

левый батн мыши я имел ввиду.

 

Yurich:
Может проще воспользоваться Стандартной библиотекой? Посмотрите пример - Controls.mq5 от MQ.

 

 Все так говорят, но зачем мне, програмеру пользоваться стандартной библиотекой? :-)  

Например глюк с случайным нажатием левого батна мыши на кнопке при перетаскивании графика, я решил 2 строчками стандартных функций, а в библиотеке это расписано на 1000 строк кода.  

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

Причина обращения: