用于创建面板和对话的类

 

这些都是班级。当然,有很多问题,甚至太多了。但目前有一个是主要的。

有没有办法从子窗口中的指标在价格图上创建一个面板?

 
Dmitry Fedoseev:

这些都是班级。当然,有很多问题,甚至太多了。但目前有一个是主要的。

有没有办法在价格图上从子窗口的指标中创建一个面板?

不是吗(\MQL5\Indicators\Examples\Panels\SimplePanel\SimplePanel.mq5)?

EURUSDM1

 
Vladimir Karputov:

这(\MQL5\Indicators\Examples\Panels\SimplePanel\SimplePanel.mq5)不是吗?

并非如此。指标本身是在子窗口中绘制的,而面板需要在价格图表上创建。对subwin参数没有反应。从Dialog.mqh的代码来看,它不应该。

bool CAppDialog::CreateIndicator(const int x1,const int y1,const int x2,const int y2)
  {
   int width=m_chart.WidthInPixels();
//--- geometry for the minimized state
   m_min_rect.LeftTop(0,0);
   m_min_rect.Width(width);
   m_min_rect.Height(CONTROLS_DIALOG_MINIMIZE_HEIGHT-2*CONTROLS_BORDER_WIDTH);
//--- determine subwindow
   m_subwin=ChartWindowFind();

我已经找到了摆脱这种情况的方法,非常棘手(而且非常不寻常,将在文章中介绍)。但这些课程的创造者的思维方式仍然非常有趣。

 
Dmitry Fedoseev:

错了。指标本身在子窗口中绘制,但面板需要在价格图表上创建。对subwin参数没有反应。从Dialog.mqh的代码来看,它不应该。

bool CAppDialog::CreateIndicator(const int x1,const int y1,const int x2,const int y2)
  {
   int width=m_chart.WidthInPixels();
//--- geometry for the minimized state
   m_min_rect.LeftTop(0,0);
   m_min_rect.Width(width);
   m_min_rect.Height(CONTROLS_DIALOG_MINIMIZE_HEIGHT-2*CONTROLS_BORDER_WIDTH);
//--- determine subwindow
   m_subwin=ChartWindowFind();

我已经找到了摆脱这种情况的方法,非常棘手(而且非常不寻常,将在文章中介绍)。但这些课程的创造者的思维方式仍然非常有趣。

我没有做过--如果指标根据创建对话框和面板的类来创建面板,它会在自己的窗口中进行。可能还有一个与接收事件的联系。
 

又发现了一个故障。我从价格图表上的指标 创建了一个面板,如果图表上的子窗口中有一个指标,面板就会出现故障。

来自地狱的礼物,不是用于创建面板和对话的课程。

 

GUI应该是什么样子的?你打算使用什么控制手段?我可以帮助在你需要的地方为所有文章制作一个GUI,使用我的版本。

以下是该库的最新版本(build 4):Graphic Interfaces X: Standard Graphics Element (build 4)

如果有兴趣,我们将在私下里继续。

 
Anatoli Kazharski:

GUI应该是什么样子的?你打算使用什么控制手段?我可以帮助在你需要的地方为所有文章制作一个GUI,使用我的版本。

以下是该库的最新版本(build 4):Graphic Interfaces X: Standard Graphics Element (build 4)

如果有兴趣,我们将在私下里继续。

我不知道它应该是什么。只是在这里 看了看有GUI的主题数量,我想也许罗氏决定普及创建面板和对话框的标准类。他们不应该被普及,他们应该被永远遗忘。

如果对GUI创作的文章没有特殊要求(我希望罗氏在某个时候能回答他们),我可以自己创作一些东西。我自己也能读到你的文章。但我只是不习惯把自己的问题归咎于别人。

 
Dmitry Fedoseev:

...

我可以自己阅读你的文章。只是,我没有把自己的问题归咎于别人的习惯。

这并不复杂。我的意思是,这不会占用我很多时间。此外,这对我来说也很有趣。

只需一分钟,本线程中关于该问题的指标模板就可以了。

//---

载有文件的档案在预告片中。

附加的文件:
Test.zip  3 kb
 
Anatoli Kazharski:

那里并不困难。我的意思是,这不会花太多时间。

仅仅一分钟,这个问题的指标模板就准备好了。

//---

预告片中的文件的档案。

Anatoly,你和MQ没有讨论过将你的类加入标准库 吗?你做了这么好的工作+文章,一切都很美,而标准库却没有随之闪亮。

或者你会把它作为一个替代方案...

 
Alexey Kozitsyn:

Anatoly,你和MQ还没有谈到把你的类加入标准库 的问题吗?你做了这么多工作+文章--一切都很美好,而标准库却没有随之闪亮。

或者你会把它作为一个替代方案...

你已经有了一个替代品。但要把它纳入标准库有很多事情要做。我不希望推出一个半生不熟的产品。在目前的实施阶段,我不同意,即使大家都说好。
 
Anatoli Kazharski:

那里并不困难。我的意思是,这不会占用我很多时间。此外,这对我来说也很有趣。

仅仅一分钟,这个问题的指标模板就准备好了。

//---

载有文件的档案在预告片中。

好吧,我去问问看。但在几天后。需要休息一会儿,过热了。是的,我想从罗氏得到关于GUI要求的答案。

不过,如果你不介意的话,给我看一个有窗口的模板,就像上面的图片一样,有两个带旋转的输入字段,两个下拉列表和一个按钮。当然,事件应该被处理,如果有一个关于如何改变窗口大小的代码例子也很好。

我的任务的重点是,我需要在飞行中改变表单上的一组控件。
原因: