c 语言 信息框,CLabel - 面板和对话框 - 标准程序库 - MQL5参考 - 参考MetaTrader 5的算法/自动交易语言...

//+------------------------------------------------------------------+

//|                                                ControlsLabel.mq5 |

//|                        Copyright 2017, MetaQuotes Software Corp. |

//|                                             https://www.mql5.com |

//+------------------------------------------------------------------+

#propertycopyright"Copyright 2017, MetaQuotes Software Corp."

#propertylink"https://www.mql5.com"

#propertyversion"1.00"

#propertydescription"Control Panels and Dialogs. Demonstration class CLabel"

#include

#include

//+------------------------------------------------------------------+

//| defines                                                          |

//+------------------------------------------------------------------+

//--- indents and gaps

#defineINDENT_LEFT                         (11)// indent from left (with allowance for border width)

#defineINDENT_TOP                          (11)// indent from top (with allowance for border width)

#defineINDENT_RIGHT                        (11)// indent from right (with allowance for border width)

#defineINDENT_BOTTOM                       (11)// indent from bottom (with allowance for border width)

#defineCONTROLS_GAP_X                      (5)// gap by X coordinate

#defineCONTROLS_GAP_Y                      (5)// gap by Y coordinate

//--- for buttons

#defineBUTTON_WIDTH                        (100)// size by X coordinate

#defineBUTTON_HEIGHT                       (20)// size by Y coordinate

//--- for the indication area

#defineEDIT_HEIGHT                         (20)// size by Y coordinate

//--- for group controls

#defineGROUP_WIDTH                         (150)// size by X coordinate

#defineLIST_HEIGHT                         (179)// size by Y coordinate

#defineRADIO_HEIGHT                        (56)// size by Y coordinate

#defineCHECK_HEIGHT                        (93)// size by Y coordinate

//+------------------------------------------------------------------+

//| Class CControlsDialog                                            |

//| Usage: main dialog of the Controls application                   |

//+------------------------------------------------------------------+

classCControlsDialog :publicCAppDialog

{

private:

CLabel            m_label;// CLabel object

public:

CControlsDialog(void);

~CControlsDialog(void);

//--- create

virtualboolCreate(constlongchart,conststringname,constintsubwin,constintx1,constinty1,constintx2,constinty2);

//--- chart event handler

virtualboolOnEvent(constintid,constlong&lparam,constdouble&dparam,conststring&sparam);

protected:

//--- create dependent controls

boolCreateLabel(void);

//--- handlers of the dependent controls events

voidOnClickLabel(void);

};

//+------------------------------------------------------------------+

//| Event Handling                                                   |

//+------------------------------------------------------------------+

EVENT_MAP_BEGIN(CControlsDialog)

EVENT_MAP_END(CAppDialog)

//+------------------------------------------------------------------+

//| Constructor                                                      |

//+------------------------------------------------------------------+

CControlsDialog::CControlsDialog(void)

{

}

//+------------------------------------------------------------------+

//| Destructor                                                       |

//+------------------------------------------------------------------+

CControlsDialog::~CControlsDialog(void)

{

}

//+------------------------------------------------------------------+

//| Create                                                           |

//+------------------------------------------------------------------+

boolCControlsDialog::Create(constlongchart,conststringname,constintsubwin,constintx1,constinty1,constintx2,constinty2)

{

if(!CAppDialog::Create(chart,name,subwin,x1,y1,x2,y2))

return(false);

//--- create dependent controls

if(!CreateLabel())

return(false);

//--- succeed

return(true);

}

//+------------------------------------------------------------------+

//| Create the "CLabel"                                              |

//+------------------------------------------------------------------+

boolCControlsDialog::CreateLabel(void)

{

//--- coordinates

intx1=INDENT_RIGHT;

inty1=INDENT_TOP+CONTROLS_GAP_Y;

intx2=x1+100;

inty2=y1+20;

//--- create

if(!m_label.Create(m_chart_id,m_name+"Label",m_subwin,x1,y1,x2,y2))

return(false);

if(!m_label.Text("Label"))

return(false);

if(!Add(m_label))

return(false);

//--- succeed

return(true);

}

//+------------------------------------------------------------------+

//| Global Variables                                                 |

//+------------------------------------------------------------------+

CControlsDialog ExtDialog;

//+------------------------------------------------------------------+

//| Expert initialization function                                   |

//+------------------------------------------------------------------+

intOnInit()

{

//--- create application dialog

if(!ExtDialog.Create(0,"Controls",0,40,40,380,344))

return(INIT_FAILED);

//--- run application

ExtDialog.Run();

//--- succeed

return(INIT_SUCCEEDED);

}

//+------------------------------------------------------------------+

//| Expert deinitialization function                                 |

//+------------------------------------------------------------------+

voidOnDeinit(constintreason)

{

//---

Comment("");

//--- destroy dialog

ExtDialog.Destroy(reason);

}

//+------------------------------------------------------------------+

//| Expert chart event function                                      |

//+------------------------------------------------------------------+

voidOnChartEvent(constintid,// event ID

constlong& lparam,// event parameter of the long type

constdouble& dparam,// event parameter of the double type

conststring& sparam)// event parameter of the string type

{

ExtDialog.ChartEvent(id,lparam,dparam,sparam);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值