Discusión sobre el artículo "Interfaces gráficas X: Control "Campo de edición del texto multilínea" (build 8)"

 

Artículo publicado Interfaces gráficas X: Control "Campo de edición del texto multilínea" (build 8):

Se considera el control «Campo de edición multilínea». A diferencia del objeto gráfico OBJ_EDIT, en esta versión no habrá limitación alguna para el número de los caracteres a introducir. Aparte de eso, se hace disponible el modo cuando el campo de edición se convierte en un sencillo editor de texto donde se puede mover el cursor usando el ratón o el teclado.

Podemos dividir las teclas del teclado en varios grupos (véase los colores en la Fig. 1):

  • Teclas de control (color naranja)
  • Teclas de función (color violeta)
  • Teclas de introducción (color azul)
  • Teclas de desplazamiento (color verde)
  • Teclado numérico (rojo)

 Fig. 1. Grupos de teclas (distribución del teclado QWERTY)

Fig. 1. Grupos de teclas (distribución del teclado QWERTY)

Autor: Anatoli Kazharski

 

En primer lugar, gracias por el artículo.

Una petición muy grande - por favor, haga una animación gif. Es imposible hacerse una idea objetiva de cómo funciona el elemento. Es necesario ver con los ojos.

Si no es difícil.

Gracias.

 
Реter Konow:

...

Una petición muy grande - por favor haga una animación gif. Es imposible hacerse una idea objetiva del trabajo del elemento. Usted necesita ver con sus ojos.

Descargue los archivos en su ordenador y pruébelo usted mismo, por favor. Será mejor que la animación gif.
 
Anatoli Kazharski:
Descarga los archivos en tu ordenador y pruébalo tú mismo, por favor. Será mejor que una animación gif.

Así es como lo preveo:

1. 1. Terminar de aprender programación orientada a objetos.

2. Terminar de estudiar todas las interrelaciones de la librería - sus clases, funciones, variables....

3. Escribir un EA que implemente el elemento descrito en el artículo. Sin embargo, incluso con esto puedo tener dificultades y tendré que corresponder aquí con usted para ayudarle a resolverlas.


Por supuesto, esta opción es mejor, pero voy a ser capaz de poner en práctica sólo en unas pocas semanas, o tal vez meses....

Y aquí, unas decenas de minutos y el resultado será visto por todos...

Bueno, vamos...

 
Реter Konow:

Así es como me lo imagino:

1. Terminar de aprender POO.

2. Estudiar todas las interrelaciones de la librería hasta el final - sus clases, funciones, variables....

3. Escribir un Asesor Experto implementando el elemento descrito en el artículo. Sin embargo, incluso con esto puedo tener dificultades y tendré que corresponder aquí con usted para ayudarle a resolverlos.


Por supuesto, esta opción es mejor, pero voy a ser capaz de poner en práctica sólo en unas pocas semanas, o tal vez meses....

Y aquí, unas decenas de minutos y el resultado será visto por todos...

Bueno, vamos...

Todo lo que necesitas hacer es descargar los archivos desde el archivo al final del artículo y compilar el Asesor Experto para la prueba. No te llevará más de un minuto.
 
 
Anatoli Kazharski:

Gracias.

El cursor se desplaza perfectamente sobre el texto. Se desplaza con el ratón y las teclas. El texto se desplaza. Eso es lo que he entendido.

Pero lo que no entiendo es como llega el texto al lienzo. No lo has mostrado en el video.

 
Реter Konow:

...

Pero no entiendo cómo llega el texto al lienzo. No lo has mostrado en el video.

De la misma manera que introduces texto desde el teclado, también llega al lienzo. Y el vídeo también lo muestra (introduciendo el texto '¡Hola mundo!').

Descarga los archivos para la prueba y pruébalo tú mismo.

 
Anatoli Kazharski:

Igual que lo introduces en el teclado, también llega al lienzo. El vídeo también lo muestra.

Descarga los archivos de prueba y pruébalo tú mismo.

En el vídeo introduces texto en el campo de entrada de la parte superior. "¡Hola mundo!" no aparece en el lienzo. Por eso pregunto.


Añadido:

He descargado la biblioteca, pero sinceramente no tengo ni idea de cómo hacer todo esto. No hay instrucciones.

 
Реter Konow:
En el vídeo, se introduce texto en el cuadro de entrada de la parte superior. "¡Hola mundo!" no aparece en el lienzo. Por eso pregunto.

En el vídeo hay dos campos de entrada creados usando la clase CTextBox implementada en el artículo.

El primer campo de entrada está en modo de una sola línea. El segundo campo de entrada está en modo multilínea. El artículo habla de esto en la sección

Para la prueba, vamos a crear una aplicación MQL con una interfaz gráfica, donde habrá dos campos de entrada de texto. Uno será de una sola línea y el otro de varias líneas.

¿Quizás antes de hacer preguntas y afirmaciones, deberías primero leer el artículo y probar los archivos proporcionados para las pruebas? Esto es lo mínimo necesario para llegar a una discusión.

 
Anatoli Kazharski:

El vídeo muestra dos campos de entrada creados utilizando la clase CTextBox implementada en el artículo.

El primer campo de entrada está en modo de una sola línea. El segundo está en modo multilínea. Esto se describe en el artículo en la sección:

¿Quizás antes de hacer preguntas y afirmaciones, deberías primero leer el artículo y probar los archivos de prueba proporcionados? Esto es un mínimo necesario para llegar a la discusión.

Por cierto, yo no he hecho ninguna afirmación. Leí el artículo, pero no entendí lo principal (hay mucho código y mis ojos se pierden).

Si puedes, por favor, responde a algunas preguntas:

1. En la aplicación de prueba del artículo, se declara un array inicializado con cadenas. ¿Significa esto que las cadenas van al lienzo desde él, o se pueden imprimir directamente en el lienzo?

2. 2. ¿El campo de entrada superior es independiente y no tiene relación con el lienzo inferior? Entonces, ¿el texto no se transfiere desde él a la web? ¿Su propósito es aumentar el número de caracteres de entrada?

3. Si el texto del lienzo se inicializa dentro del programa y no se escribe en el lienzo, ¿por qué se necesita un cursor en funcionamiento?

4. ¿Es posible borrar el texto de la web con el cursor y añadirlo desde el teclado?


Gracias.