Discussão do artigo "Linguagem MQL como um meio de marcação da interface gráfica de programas MQL. Parte 1" - página 5

 
Aliaksandr Hryshyn:
Existe a possibilidade de escrever um artigo sobre uma GUI e não tirar uma única captura de tela?

Quando um artigo é grande, ele é forçado a ser dividido em partes, tendo que embaralhar o material, e as capturas de tela foram deixadas nas sequências. A captura de tela do "Spotlight" coincide completamente com o artigo anterior sobre GUI, então me limitei à frase de que a aparência não mudou.

 
Stanislav Korotky:

Quando um artigo é grande, ele é forçado a ser dividido em partes, tendo que embaralhar o material, e as capturas de tela foram deixadas nas sequências. A captura de tela de "Spots" coincide completamente com o artigo anterior sobre GUI, então me limitei à frase de que a aparência não mudou.

Ao pressionar o botão esquerdo do mouse, quando o cursor sai do botão e o mouse é solto, obtenho esta imagem. Além disso, depois de arrastar os pontos, você pode arrastar o gráfico de preços através deles. Isso pode ser corrigido?

 
Aliaksandr Hryshyn:

Quando pressiono o botão esquerdo do mouse, o cursor sai do botão e o mouse é liberado, obtenho esta imagem. Além disso, depois de arrastar os pontos, você pode arrastar o gráfico de preços através deles. Isso pode ser corrigido?

"Essa imagem" - você se refere à cor diferente dos campos? Não observei essa imagem. PS. Consegui reproduzi-la. Verei o que há de errado, mas não é um problema de marcação, é como os botões padrão funcionam.

Com relação a arrastar o gráfico, se eu entendi corretamente o que você quer dizer, tente substituir este arquivo (ele está no próximo post).

Arquivos anexados:
 
Eugeniy Lugovoy:
Ok, finalmente eu o peguei. Você está concentrado principalmente na tecnologia e não no uso. Muito bem.
Desejo-lhe boa sorte em sua pesquisa.

A tecnologia foi testada e está pronta para uso. E sua proposta?

 
Eugeniy Lugovoy:

Desculpe-me pela pergunta idiota, mas que tipo de GUI você está tentando criar que não pode ser feito (ou é muito difícil de fazer) nas bibliotecas MQL padrão?

Além disso, vejo que a realização é bastante complicada desde o início. Talvez seja melhor dar uma olhada no estilo jQuery de implementação da interface do usuário?

Por exemplo, a criação de um botão simples poderia ser semelhante a:

É claro que ele precisa ter seu próprio "gerador de objetos" e assim por diante, e também é possível torná-lo extensível e oferecer suporte a objetos "definidos pelo usuário", como efeitos de sombra, gradientes etc.

Assim, poderia ser mais fácil para o desenvolvedor criar uma GUI dessa forma.

Também é possível criar um aplicativo como o MT GUI Builder para a criação visual da GUI e exportar o arquivo JSON para implementação rápida no lado MQL...

São apenas minhas considerações após ler o artigo e minha opinião.

É claro que você está no seu próprio caminho.

Com os melhores cumprimentos,

Eugênio

Eugene, você fala russo e fala russo perfeitamente bem. Por que tanto desrespeito na parte russa do fórum?

 
Eugeniy Lugovoy:

Você fala russo. Escreva em russo. Ou, pelo menos, use o tradutor embutido no editor de mensagens.

 
Stanislav Korotky:

"Esse padrão" - você se refere à cor diferente dos campos? Eu não observei esse padrão. PS. Consegui reproduzi-lo. Verei o que está errado, mas não é um problema de marcação, é como os botões padrão funcionam.

Com relação a arrastar o gráfico, se eu entendi corretamente o que você quer dizer, tente substituir este arquivo (ele está no próximo post).

Com o novo arquivo, o arrastamento pela janela foi corrigido.

O que resta é o seguinte :)

Clique com o botão esquerdo do mouse em um quadrado com um número, arraste para longe desse quadrado e solte. O sombreamento não desaparece.

 
Aliaksandr Hryshyn:

Com o novo arquivo, o arrastamento pela janela foi corrigido.

Isso permanece :)

Clique com o botão esquerdo do mouse em um quadrado com um número, afaste-se desse quadrado e solte. O sombreamento não desaparece.

Sim, eu entendi. Mas é assim que os botões da biblioteca padrão funcionam desde o início. Não havia nenhum propósito em editá-lo em todas as direções, especialmente porque o problema é muito específico - nunca tive o desejo de pressionar o botão de propósito e arrastar sem pressioná-lo. Afinal, não é um caso de uso muito óbvio.

 
Stanislav Korotky:

Sim, eu entendi. Mas é assim que os botões da biblioteca padrão funcionam desde o início. Eu não queria modificá-lo em todas as direções, especialmente porque o problema é muito específico - nunca tive o desejo de pressionar um botão de propósito e arrastá-lo sem pressioná-lo. Afinal, não é um caso de uso muito óbvio. Afinal, não é um caso de uso muito óbvio.

O evento de pressionar o botão direito do mouse não ocorre em uma situação como essa?
 
Aliaksandr Hryshyn:
O evento de clique com o botão direito do mouse não aparece nessa situação?

Isso depende. Os eventos chegam ao objeto com base nas coordenadas. Quando o cursor está fora do botão ou da janela, eles não recebem nada. Até mesmo o recurso arrastar e soltar funciona com base nesse princípio: um objeto em constante movimento é criado sob o cursor. Uma edição ligeiramente diferente é necessária nesse caso.