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

 

Provavelmente não faz sentido continuar a aprender a linguagem de marcação. Por que não? Hoje se tornou óbvio que o construtor visual vai substituí-lo. Nunca pensei que seu projeto se tornasse tão claro, mas tornou-se. Uma pena, é claro, mas esse era o plano. Descreverei brevemente a funcionalidade e os princípios do editor:

  1. Três funções básicas, (como os três elefantes que sustentam o Mundo):
  • Acrescentar um item ao núcleo.
  • Retirar um item do núcleo.
  • Mova um item dentro do núcleo.

Duas funções para editar itens:

  • Definir foco de edição.
  • Editar item.

3. funções que lhe permitem trabalhar com projetos:

  • Projeto de Carga.
  • Salvar Projeto.

As janelas necessárias para o editor. 4:

  • Seleção de controles.
  • Selecione o foco.
  • Seleção de propriedades.
  • Janelas para seleção de valores de diferentes propriedades (cores, quadros, fontes...).
  • Janelas para definição de parâmetros para tabelas, listas e menus criados.
  • Janelas de confirmação das ações.

Agora, um pouco de explicações:

  • Função para adicionar um elemento ao núcleo: Como você sabe, o núcleo é dividido em duas áreas - padrão e usuário. O regular contém os protótipos dos elementos (dentro da janela de seleção). No caso de transferência do elemento para a janela do usuário, o tamanho da parte do núcleo do usuário é aumentado e o espaço livre é preenchido com o modelo do elemento da área do pessoal. Em seguida, a ordem de numeração dos objetos no núcleo é reescrita e o novo item toma seu lugar. A parte mais difícil é reescrever o núcleo corretamente, já que muitos parâmetros estão envolvidos nesta mudança.
  • A função de remover um item é essencialmente uma função invertida para adicionar um item. É a mesma coisa, só que ao contrário.

  • A função do elemento móvel dentro do núcleo manipula essencialmente as duas funções descritas acima.

  • A função mais importante do meu editor é a função de editar foco. O que é: o usuário seleciona os elementos, objetos e propriedades que vão ser editados. É assim que se faz: clicando em um item automaticamente o coloca em foco e depois usando a janela de troca de foco, todos os itens desse tipo podem ser trazidos em foco, ou um único objeto dentro de um item ou de um conjunto selecionado de itens. Ou seja, você pode alternar o alvo de edição. Digamos que selecionamos 'este elemento' e 'base' como o foco, e os editores trabalham com as propriedades dessa base, e se tomarmos 'Tipo de elemento na janela' e 'Texto' como foco, os editores modificam as propriedades de todos os itens de texto na janela. E assim por diante. Múltiplas opções de foco podem ser disponibilizadas para tornar a edição conveniente e rápida.
  • A função de edição transfere os valores de propriedade dos itens editados para os parâmetros dos editores que trabalham com os valores resultantes e, em seguida, os devolve de volta às propriedades originais, após o que refaz os itens modificados.

  • A função Carregar Projeto é uma inversão da função Salvar Projeto, que funciona com sucesso no construtor (chamada do menu e imprime o arquivo "CORES"). Ele pega os núcleos salvos do arquivo e os coloca de volta na área do usuário de onde foram descarregados para o arquivo.

  • As janelas necessárias para o editor já estão em parte instaladas. Há algum tempo, fiz um vídeo sobre o estúdio visual, onde mostrei a criação de seu protótipo. Todas as janelas necessárias foram escritas em uma linguagem de marcação. Assim, isso me poupa tempo e esforço.
  • Além disso, em algum lugar dos arquivos há uma função de moldura azul, que seleciona elementos para edição.
  • Já existem funções para redimensionamento de elementos (mostrados no gif) e elementos móveis, o que é uma parte crucial do processo de edição.


É isso aí. É uma realidade absoluta. Então, a linguagem de marcação está fugindo de nós... Estou pessoalmente triste...

 
Реter Konow:

Provavelmente não faz sentido continuar a aprender a linguagem de marcação. Por que não? Hoje se tornou óbvio que o construtor visual vai substituí-lo. Nunca pensei que seu projeto se tornasse tão claro, mas tornou-se.

Viva!
Você e eu já conversamos sobre isso há quase 3 anos :))

 
Na terça-feira, apresentarei uma versão mínima do vis-editor. Ele criará uma janela, adicionará elementos (um de cada vez), editará posição, tamanho, cor (ainda sem foco extravagante) e salvará o projeto. O trabalho no resto das coisas levará até o final do mês, eu acho. Talvez um pouco mais. O editor estará disponível para todos.
 
Nikolai Semko:

Viva!
Você e eu já conversamos sobre isso há quase 3 anos :))

Sim, Nikolai:)) Já aconteceu!))

 
Nikolai Semko:

Viva!
Você e eu já conversamos sobre isso há quase 3 anos :))


Eu também disse que é mais fácil escrever um projeto em pluses ou embarcadero do que ensinar markup.....
 

Esta noite (em cerca de 5 horas...) vou apresentar um protótipo funcional do editor visual, onde você poderá adicionar itens e editar propriedades em modo "manual". Convido-os a experimentar e dar sua opinião. Seu desenvolvimento está se movendo a uma velocidade tremenda, o que eu não esperava, e o que vocês verão é apenas o começo. Portanto, não o julgue com dureza. Sua funcionalidade poderia multiplicar-se e melhorar muitas vezes em questão de semanas.

 

Publicado.

Instruções rápidas:

Desembalar o arquivo e instalar o conselheiro KIB_Studio.ex5 na pasta de especialistas e o indicador Empty_window.ex5 na pasta de indicadores. Execute primeiro o conselheiro, depois o indicador.

1. A janela do menu aparecerá. Ela contém controles básicos.

2. Depois que o indicador for carregado, uma janela vazia aparecerá para edição.

3. Arraste e solte os itens da janela de menu para a janela vazia e edite-os.


A edição inclui as seguintes opções:

1. objetos de redimensionamento (a base dos elementos (botões) e textos). Alguns dos itens não alteram alguns de seus parâmetros. Isto é feito para manter sua integridade. Por exemplo, a lista popup não altera a altura e a posição de seu texto e os parâmetros de seu botão.

2. Elementos móveis sobre a tela. Você pode mover tanto o elemento inteiro quanto suas partes (novamente - não para todos os elementos). Para um elemento, o movimento é limitado pelo kanvas, e para seus objetos internos - pelo espaço de sua base. A correção é automática.

3. Abra as janelas de seleção de cores, fontes e ícones clicando na guia "Principais propriedades" do menu. Para editar um objeto, clique sobre ele e depois clique nas cores, fontes ou ícones desejados, dependendo do objeto de edição selecionado.

4. É possível redimensionar o texto clicando sobre ele, com setas para cima e para baixo ou esquerda e direita e movendo o cursor. O texto mudará seu tamanho ao se tornar menor ou maior.

5. Você pode mudar o ângulo do texto girando-o. Para fazer isso, pegue a seta no canto superior esquerdo e puxe. A seta aponta diagonalmente da esquerda para a direita.

6. É possível digitar sobre os elementos alterando seu texto. Para fazer isso, clique duas vezes no texto. Aparecerá uma caixa de entrada. Outro clique e o texto é selecionado. Então você pode apagá-lo e imprimir outra coisa.

7. Você pode mover itens agarrando o centro de seu lado superior quando uma mira aparece.


Документация по MQL5: Программы MQL5 / Выполнение программ
Документация по MQL5: Программы MQL5 / Выполнение программ
  • www.mql5.com
Каждый скрипт, сервис и эксперт работает в собственном отдельном потоке. Все индикаторы, рассчитываемые на одном символе, даже если они запущены на разных графиках, работают в одном потоке. Таким образом, все индикаторы на одном символе делят между собой ресурсы одного потока. В одном потоке с индикаторами также последовательно выполняются...
 

Muito bem, Peter!
Muito trabalho já foi feito.

Um bom começo foi feito.
O arquivo com o código está sendo gerado? Não consegui encontrá-lo.

 
Nikolai Semko:

Muito bem, Piotr!
Bom trabalho feito.

O início já foi feito.
O arquivo com o código é gerado? Ainda não o encontrei.

Obrigado, Nikolai.

Os arquivos de boot e api são gerados através do menu principal (clique duplo no gráfico), mas ainda não vale a pena tentar nesta versão. O motor precisa ser atualizado lá e nem tudo é feito no próprio estúdio. É um pouco cedo. Até o final do mês tentarei portar completamente todas as características do idioma para o editor.

 

que tudo isso vai para o estilo habitual. Há certos momentos, como o botão de ligação, o botão de pairar, o botão de clicar e apenas o botão. E para cada momento eles geralmente fazem seus próprios estilos, ou uma mistura deles.

Para dizer a verdade, eu sempre entendi mal em tais coisas como organizar as configurações do código executado para um botão. Para que fosse também visual. E também com suas próprias verificações do código para erros.


Um exemplo vivo de tal trabalho seria a criação de um menu para criar um menu. Ou seja, se graficamente for possível fazer o menu esquerdo ou direito com código embutido, por assim dizer, na hora certa.

Ou é apenas a geração de botões em code....?

Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Свойства объектов
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Свойства объектов
  • www.mql5.com
Все объекты, используемые в техническом анализе, имеют привязку на графиках по координатам цены и времени – трендовая линия, каналы, инструменты Фибоначчи и т.д.  Но есть ряд вспомогательных объектов, предназначенных для улучшения интерфейса, которые имеют привязку к видимой всегда части графика (основное окно графика или подокна индикаторов...