Discussão do artigo "Linguagem MQL como um meio de marcação da interface gráfica de programas MQL (Parte 3). Designer de formulários"

 

Novo artigo Linguagem MQL como um meio de marcação da interface gráfica de programas MQL (Parte 3). Designer de formulários foi publicado:

Este artigo complementa a descrição da ideia de como construir uma interface de programa MQL com ajuda das construções da linguagem MQL. Um editor gráfico especial nos permitirá configurar interativamente um layout consistindo nas principais classes de elementos da GUI e, em seguida, as exportará para uma descrição MQL que será usada em nosso projeto MQL. Aqui são apresentados detalhes internos do editor e o manual do usuário. Códigos fonte estão anexados ao artigo.

O editor é projetado para classes de elementos de interface da Biblioteca Padrão. Para criar ferramentas semelhantes para outras bibliotecas, precisaremos escrever implementações concretas de todas as entidades abstratas desde o sistema de layout proposto. Adicionalmente, devemos nos orientar pela implementação de classes de layout para a Biblioteca Padrão.

Deve-se notar que o nome "biblioteca de componentes padrão" não corresponde exatamente à realidade, uma vez que no contexto de artigos anteriores já tivemos que modificá-la significativamente e exibi-la como uma ramificação de versão paralela na pasta ControlsPlus. Para os fins deste artigo, continuaremos a usá-la e modificá-la.

Vamos listar os tipos de elementos que o editor suportará.

  • contêineres CBox com orientação horizontal (CBoxH) e vertical (CBoxV),
  • botão CButton,
  • campo de entrada CEdit,
  • rótulo CLabel,
  • campo de entrada com iteração de valores SpinEditResizable,
  • calendário CDatePicker,
  • lista suspensa ComboBoxResizable,
  • lista ListViewResizable,
  • grupo de botões de opção independentes CheckGroupResizable,
  • grupo de botões de opção RadioGroupResizable.

Todas as classes facilitam o redimensionamento adaptável (alguns tipos padrão tinham isso desde o início, outros receberam modificações significativas).

Processo de edição de formulário

Processo de edição de formulário

Autor: Stanislav Korotky