Группа "Стол заказов MQL"

Рейтинг 2081



РЕКОМЕНДУЮ



Запрет на нажатие правой кнопки мыши

Здравствуйте, каким способом можно запретить нажатие ПРАВОЙ кнопки мыши по объекту и в тоже время было разрешено его перемещать. Возможно ли это сделать? Спасибо
  • 0
  • Просмотров: 1052
  • 3 февраля 2018, 08:37
  • vebster
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Одну функцию в советник
Следующая запись в группе  
Запрет на нажатие правой кнопки мыши
03 февраля 2018
03 февраля 2018

Комментарии (2)

+
0
никак баннер рекламный хочется запихнуть в советник *think* 
avatar

  17  vis Сообщений: 196 - ♫♪♫♪

  • 3 февраля 2018, 20:49
+
0
Так сделаете проверку какой кнопкой мыши кликнули на графике и определите координаты:




//+------------------------------------------------------------------+
//|                                                        Baton.mq4 |
//|                                              Copyright 2018, AM2 |
//|                                      http://www.forexsyatems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018, AM2"
#property link      "http://www.forexsyatems.biz"
#property version   "1.00"
#property strict
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
//--- включение сообщений о перемещении мыши по окну чарта
   ChartSetInteger(0,CHART_EVENT_MOUSE_MOVE,1);
   PutButton("B",55,55,"БАТОН");
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutButton(string name,int x,int y,string text)
  {
   ObjectCreate(0,name,OBJ_BUTTON,0,0,0);
//--- установим координаты кнопки
   ObjectSetInteger(0,name,OBJPROP_XDISTANCE,x);
   ObjectSetInteger(0,name,OBJPROP_YDISTANCE,y);
//--- установим размер кнопки
   ObjectSetInteger(0,name,OBJPROP_XSIZE,80);
   ObjectSetInteger(0,name,OBJPROP_YSIZE,30);
//--- установим угол графика, относительно которого будут определяться координаты точки
   ObjectSetInteger(0,name,OBJPROP_CORNER,2);
//--- установим текст
   ObjectSetString(0,name,OBJPROP_TEXT,text);
//--- установим шрифт текста
   ObjectSetString(0,name,OBJPROP_FONT,"Arial");
//--- установим размер шрифта
   ObjectSetInteger(0,name,OBJPROP_FONTSIZE,12);
//--- установим цвет текста
   ObjectSetInteger(0,name,OBJPROP_COLOR,Red);
//--- установим цвет фона
   ObjectSetInteger(0,name,OBJPROP_BGCOLOR,White);
//--- установим цвет границы
   ObjectSetInteger(0,name,OBJPROP_BORDER_COLOR,Blue);
//--- включим (true) или отключим (false) режим перемещения кнопки мышью
   ObjectSetInteger(0,name,OBJPROP_SELECTABLE,1);
   ObjectSetInteger(0,name,OBJPROP_SELECTED,1);
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {

  }
//+------------------------------------------------------------------+
void OnChartEvent(const int id,const long &lparam,const double &dparam,const string &sparam)
  {
//--- нажатие мышкой на графике
   if(id==CHARTEVENT_MOUSE_MOVE)
     {
      if(sparam=="1") Comment("Нажатие левой кнопки мышки на графике!"+"\n  Координаты  мышки на графике: x = ",lparam,"  y = ",dparam);
      if(sparam=="2") Comment("Нажатие правой кнопки мышки на графике!"+"\n  Координаты  мышки на графике: x = ",lparam,"  y = ",dparam);
     }
  }
//+------------------------------------------------------------------+



А перехват событий мыши, это уже WinAPI.
avatar

  34  AM2 Сообщений: 15869 - Андрей

  • 4 февраля 2018, 11:36

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий
Начать торговлю с Альпари