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

 
Sim... Por exemplo, se o H_TAB é escrito em vez de _X2X, etc.
 
Alexey Navoykov:
Sim... Por exemplo, se você escrever H_TAB em vez de _X2X etc., eu me pergunto se há pelo menos um controle de exatidão de tal código na fase de compilação.

Há alguns controles de correção em vigor. Por exemplo, se você escrever h_tab em vez de H_TAB ou cometer qualquer erro ortográfico em qualquer palavra-chave. No entanto, se você escrever o código incorretamente, não há controle. Tal como no editor habitual.

No exemplo acima, o grupo será simplesmente posicionado de forma incorreta.

Eis o que veio à tona.

 
Реter Konow:

Entretanto, se você escrever o código incorretamente, não haverá controle. Assim como em um editor comum.

Você quer dizer um editor de texto? Aqueles inúmeros erros aleatórios (como a mistura de parâmetros, falta de algo etc.) que geralmente são controlados pelo compilador, têm que ser pegos em tempo de execução aqui por você mesmo.
Toda essa escrita aparentemente lacônica de código se revela um inferno de muitos problemas enquanto se depura mais tarde. Você economiza uma centena de linhas de código e depois gasta cem horas-homem para pegar até os erros mais simples. Isso é apenas...
 
Alexey Navoykov:
Você está se referindo a um editor de texto? Aqueles inúmeros erros aleatórios (como a mistura de parâmetros, falta de algo, etc.) que normalmente são controlados por um compilador, terão que ser pegos no momento da execução aqui.
Como resultado, toda essa aparente brevidade na escrita do código se transforma em um inferno de muitos problemas com sua posterior depuração. Para salvar cem linhas de código e depois gastar cem horas-homem na captura dos erros mais simples. Isso é apenas...

Veja quantas janelas eu colei. E a rapidez com que os estou rebitando. Por que se dar a tanto trabalho? Tudo isso é muito fácil e rápido. Você só tem que aprender as regras básicas.

Veja o código. Cadeias de propriedades, e grupos inteiros e janelas, podem ser simplesmente transferidos de projeto para projeto. Ninguém proíbe a criação de uma base de códigos GUI gratuita da qual todos possam tirar modelos prontos para uso.

Cada janela criada pode se tornar um protótipo para a próxima.

 

Obrigado, Peter, eu baixei seu código, atualizado para a versão 1.3, depois de mudar o prazo, a cruz e a barra de tarefas na parte inferior desaparecem, e nada mais é clicado.

Também por alguma razão em todas as guias exibe texto, e só deve estar na guia Hotkeys, e que em aspas "UP" e "DOWN" devem ser editadas,

e ainda não está claro para mim quais são esses comandos, você postaria as instruções para os comandos e sintaxe, se ainda não estiver pronto, não estou com pressa


 
Rafil Nurmukhametov:

Obrigado, Peter, eu baixei seu código, atualizado para a versão 1.3, depois de mudar o prazo, a cruz e a barra de tarefas na parte inferior desaparecem, e nada mais é clicado.

Também por alguma razão em todas as guias exibe texto, e só deve estar na guia Hotkeys, e que em aspas "UP" e "DOWN" devem ser editadas,

e ainda não me é claro quais são esses comandos, você postaria as instruções para os comandos e a sintaxe, se ainda não estiver pronto, não estou com pressa


Alguns esclarecimentos, Rafil.

1. Você não precisa mudar os prazos na tabela do construtor. Não foi projetado para isso. Você modela a interface nela, e depois imprime seus arquivos: CORES e Internal_API. Você conecta estes arquivos à sua aplicação e ela terá sua própria GUI.

2. Você amarra grupos inteiros de objetos a abas:

//--------------------------------------------------------------------------------------------------------------
//УСТАНАВЛИВАЕМ ЯВЛЕНИЕМ КАКИХ ГРУПП БУДУТ УПРАВЛЯТЬ ВКЛАДКИ (прописываем имена групп последовательно).--------------
//--------------------------------------------------------------------------------------------------------------
"Цветовые настройки",  IS_APPEARANCE_CONTROLLER,  "Группа вкладки цветовых настроек", ... продолжаем перечисление названий групп или объектов... END,
"Индикаторы",          IS_APPEARANCE_CONTROLLER,  "Группа вкладки индикаторы",        ... продолжаем перечисление названий групп или объектов... END,
"Горячие клавиши",     IS_APPEARANCE_CONTROLLER,  "Группа вкладки клавиш",            ... продолжаем перечисление названий групп или объектов... END,
//----------------------------------------------------------------------------------


//------------------------------------------------------------------------------------
//ИМЕНУЕМ ГРУППЫ КАК ИХ ПОДКЛЮЧАЛИ ВЫШЕ. И ТОГДА, ВКЛАДКИ БУДУТ УПРАВЛЯТЬ ИХ ЯВЛЕНИЕМ:
//------------------------------------------------------------------------------------
GROUP, "Группа вкладки цветовых настроек",  

....

END_GROUP,
//------------------------------------------------------------------------------------
GROUP, "Группа вкладки индикаторы"",  

....

END_GROUP,
//------------------------------------------------------------------------------------
GROUP, "Группа вкладки клавиш",  

....

END_GROUP,

Hoje vou imprimir as instruções para os comandos e regras básicas. Haverá mais atualizações, estou constantemente corrigindo os bugs.


NOTA:

1. NOMES IDÊNTICOS NÃO PODEM SER DADOS A GRUPOS OU OBJETOS DENTRO DA MESMA JANELA. SE O NOME DE UM OBJETO NÃO FOR ESSENCIAL, ELE É SIMPLESMENTE CHAMADO DE "A" E É CRIADO AUTOMATICAMENTE.

2. NÃO SE PODE NOMEAR JANELAS COM O MESMO NOME.

 
Rafil Nurmukhametov:
... e o que está entre aspas "UP" e "DOWN" deve ser editado...


Explique o que significa edição, por favor.
 
Реter Konow:
Explique o que significa edição, por favor.

ou seja, deve haver um campo para inserir números e letras

 
Rafil Nurmukhametov:

ou seja, deve haver um campo para inserir números e letras

Muito bem, muito bem:

//---------------------------------------------
//НАЗВАНИЯ ПОЛЕЙ ВВОДА И ПОЛЯ ВВОДА.
//---------------------------------------------
GROUP, "Group name 1",  

__,BOARD,"ПОКУПКА ПО РЫНКУ  - ''UP''",   EDIT,"ПОКУПКА ПО РЫНКУ",  

GAP,20,

__,BOARD,"ПРОДАЖА ПО РЫНКУ  - ''DOWN''",EDIT,"ПРОДАЖА ПО РЫНКУ",    

END_GROUP,
//-----------------------------------
//ПОЗИЦИЯ ГРУППЫ ОТНОСИТЕЛЬНО ПРЯМОУГОЛЬНИКА R1 (тип привязки по оси х, имя объекта привязки, поправка. тоже самое для оси y).
//-----------------------------------
i, AT, _X2X,"R1",10, _Y2Y,"R1",30,
//-----------------------------------
//ПРИВЯЗЫВАЕМ ТЕКСТ ЭЛЕМЕНТОВ BOARD К ЛЕВОМУ КРАЮ И УСТАНАВЛИВАЕМ ДЛИННУ.
//-----------------------------------
i,BOARDS,  text, _A1_,_X2X,0,  W,200,  END,
//-----------------------------------
//УСТАНАВЛИВАЕМ ДЛИННУ ПОЛЕЙ ВВОДА.
//-----------------------------------
i,EDITS,   W,100,                      END,
//-----------------------------------

Coloque-o no lugar do grupo anterior.

zy. haverá uma atualização à noite. bugs perceptíveis foram corrigidos.


 
Atualizada a versão. Imprimiu a lição.