Discussão do artigo "Interfaces gráficas XI: Caixas de Edição de Texto e Caixas de Combinação nas células da tabela (build 15)" - página 2

 

Todo esse milagre ainda não funciona no MT4?

 
Pavel Kolchin:

todo esse milagre ainda não funciona no MT4?

Com pequenos ajustes, ele funciona.

UPD. Nem todos os elementos são verificados...

 

Moderadores bom, esses recursos são implementados, mesmo que o uso do arquivo de inclusão seja, afinal, o código-fonte visível. Não é possível permitir que o código-fonte seja colocado dentro da biblioteca, incluindo o arquivo de chamada da biblioteca, a chamada do programa principal incluindo o arquivo. Isso é melhor do que incluir diretamente o arquivo para ver o código que não deve ser escrito!

 
Essa é uma pergunta: ao inserir texto na tabela a partir do teclado numérico direito, nada acontece, a célula não exibe os dados de entrada.
 
Andrii Djola:
Tenho uma pergunta: ao inserir texto na tabela a partir do teclado numérico direito, nada acontece, a célula não exibe os dados de entrada.

Na versão atual da biblioteca, o teclado numérico não é processado.

 
mal
 
Anatoli Kazharski:

A versão atual da biblioteca não processa o teclado numérico.

Por mais estranho que possa parecer, mas eu o tenho....
 
Oleksii Chepurnyi:
Curiosamente, está funcionando para mim.....
talvez você tenha editado algo? Se sim, o que foi?
 
Oleksii Chepurnyi:
Curiosamente, ele está processando para mim.....

Os números estão chegando?

 
Anatoli Kazharski:

Os números estão sendo inseridos?

Sim.

Andrii Djola:
e talvez você tenha editado alguma coisa? Se sim, o que foi?

A propósito, sim. Eu me lembro de algo assim... Agora gostaria de lembrar o que mudei :)

Acho que adicionei isso. Chaves.mqh

string CKeys::KeySymbol(const long key_code)
  {
   string key_symbol="";
//--- Se você precisar digitar um espaço (tecla Espaço)
   if(key_code==KEY_SPACE)
     {
      key_symbol=" ";
     }
//--- Se você quiser inserir (1) um caractere alfabético ou (2) um caractere de tecla numérica ou (3) um caractere especial
   else if((key_code>=KEY_A && key_code<=KEY_Z) ||
           (key_code>=KEY_0 && key_code<=KEY_9) ||
           (key_code>=KEY_NUMLOCK_0 && key_code<=KEY_NUMLOCK_SLASH) ||
           (key_code>=KEY_SEMICOLON && key_code<=KEY_SINGLE_QUOTE))
     {
      key_symbol=::ShortToString(::TranslateKey((int)key_code));
     }
//--- Retorna o caractere
   return(key_symbol);
  }