GUI de origem popular. Testes beta abertos. - página 35

 
Alexandr Andreev:

Neste caso, você precisa saber os nomes de todos os elementos de cor, mas aqui no arquivo tudo já está gerado

Como você pode ver no vídeo, você precisa saber os nomes dos elementos em qualquer caso. Em princípio, isto é lógico.

Mas eu não entendo como se pode dar nomes significativos aos controles por si mesmo. Aparentemente, não há como.

 
Alexandr Andreev:

Bem, é mais fácil lembrar de suas próprias variáveis do que aprender as de outra pessoa.

Em geral, ocódigo deve ter um mínimo de variáveis globais todas implementadas, passando pedaços de memória e processando múltiplos valores ao mesmo tempo. Faz sentido que ..... .... .... HH tentou cortar palavras relacionadas a objetos diretamente.

Em geral, é mais fácil usar os colbacks regulares.

O vídeo mostrou que Petr construiu TODOS eles com variáveis globais.

A função de processamento de mensagens é a única para todo o programa e apenas um valor é enviado a ele.

Esta função única verifica se há mudanças em todos os controles disponíveis que estão na matriz global. E o estrago desta função aumentará à medida que o número de elementos na forma aumentar.

Peter diz que você não terá que cavar em seu código: bem, essa é exatamente a confusão que você terá que cavar muito a sério. Isto poderia ter sido facilmente evitado se Peter tivesse gerado um método de evento padrão em cada caso com a passagem do tipo, nome e valor do controle. Então tudo seria facilmente manipulado no corpo da EA principal.

 
Алексей Барбашин:

Como você pode ver no vídeo, você precisa saber o nome dos elementos de qualquer maneira. Isto faz sentido, em princípio.

Mas eu não entendo como você mesmo pode dar nomes significativos aos controles. Aparentemente, não há como.

Elementos que têm texto sobre eles - botões, por exemplo, você pode escrever nomes diretamente sobre eles (clique duplo), ou no segundo campo de entrada superior no painel de propriedades. Outros - somente em campo de nome no painel de propriedade. Aí você também pode especificar o nome das janelas (campo mais alto).
 
Реter Konow:
E o que você quer dizer com ambiente?

linguagem de marcação

 

O vídeo mostrou claramente que não se pode obter um valor de um determinado controle em um determinado lugar. O valor só pode ser recuperado no momento de um evento de mudança naquela grande folha. E tudo porque não há nada a que se referir, pois não há objetos.

Pyotr disse que levaria pelo menos um ano para modificar seu código pelo menos um pouco... Não tenho tanta certeza sobre isso. A edição regular de textos, que é o que são pedaços de código, permitirá que você substitua uma coisa por outra muito rapidamente. Mas essa é uma canção completamente diferente...

 
Para nomear um elemento na caixa do imóvel, o elemento deve estar em foco. Simplificando, ele deve ser clicado e todas as suas propriedades serão exibidas no painel de propriedades e estarão disponíveis para edição. Esta é a abordagem clássica dos editores visitantes.
 
Реter Konow:
Elementos que têm texto sobre eles - botões, por exemplo, você pode escrever o nome diretamente sobre eles (clique duplo), ou no segundo campo de entrada superior no painel de propriedades. Outros elementos - somente em campo de nome no painel de propriedade. Aí você também pode especificar o nome das janelas (campo mais alto).

Revisitou o vídeo novamente - sim, é verdade, desculpe não ter notado logo. É realmente uma abordagem clássica. O nome do elemento e o texto nele (conteúdo) podem não corresponder.

 
Алексей Барбашин:

O vídeo mostrou claramente que você não pode obter um valor de um controle específico em um local específico. O valor só pode ser recuperado no momento de um evento de mudança naquela grande folha. E tudo porque não há nada a que se referir, pois não há objetos.

Pyotr disse que levaria pelo menos um ano para modificar seu código pelo menos um pouco... Não tenho tanta certeza sobre isso. A edição regular de textos, que é o que são pedaços de código, permitirá que você substitua uma coisa por outra muito rapidamente. Mas essa é outra história...

Acho que vou ter de fazer outro vídeo... Esqueci de mostrar como recuperar os valores dos itens. A mesma chamada, somente com parênteses vazios, retorna o valor atual do elemento.

Há também a possibilidade, pela mesma chamada, de mudar as cores e estados do elemento.

Hoje vou fazer uma pequena demonstração em um gifka.
 
Реter Konow:
Acho que vou ter que fazer outro vídeo... Esqueci de mostrar como a EA obtém o valor dos elementos. A mesma chamada, somente com parênteses vazios, retorna o elemento atual.

Quando você abre o editor, eu não entendo porque você não "espalha" os painéis "editor de propriedades" e "biblioteca de elementos" até as bordas do gráfico, e porque eles se sobrepõem um ao outro? É uma coisa pequena no fluxo global, é claro, mas é algo que chama a atenção.

 
Реter Konow:
Acho que vou ter que fazer outro vídeo... Esqueci de mostrar como o Expert Advisor obtém o valor dos elementos. A mesma chamada, somente com parênteses vazios, retorna o valor atual do elemento.

Também é possível mudar as cores e os estados de um elemento com a mesma chamada.

Vou fazer uma pequena demonstração em um gif hoje.

Ah, bem, sim. Você poderia ter adivinhado que... eu era burro. Como tudo em seu programa é baseado em variáveis globais e não há conceito de contexto, é claro que qualquer coisa pode ser obtida de qualquer coisa em qualquer lugar do programa.