Discusión sobre el artículo "Interfaces gráficas X: Control "Hora", control "Lista de las casillas de verificación" y ordenamiento (sort) de la tabla (build 6)"

 

Artículo publicado Interfaces gráficas X: Control "Hora", control "Lista de las casillas de verificación" y ordenamiento (sort) de la tabla (build 6):

Continuamos con el desarrollo de la librería para la creación de interfaces gráficas. Esta vez mostraremos los controles «Hora» y «Lista de las casillas de verificación». Aparte de eso, a la clase de la tabla tipo CTable se le ha sido añadida la posibilidad de organizar los datos en orden ascendiente y descendiente.

Vamos a nombrar todos los componentes que van a formar parte del control «Hora»:

  • Fondo
  • Icono
  • Descripción
  • Dos campos de edición


Fig. 1. Partes integrantes del control “Hora”.

 

Autor: Anatoli Kazharski

 

Tengo preguntas concretas:

1. ¿tiene una fila de nombres de columna en la tabla, cuando se desplaza verticalmente, permanece inmóvil, o sale del campo de visibilidad? Pregunta similar acerca de la primera columna con nombres de fila - ¿se va a la izquierda cuando se mueve el control deslizante de desplazamiento horizontal hacia la derecha o no?

2. 2. ¿Cambia la anchura de las columnas?

3. ¿La tabla del ejemplo anterior está dibujada en el lienzo o está hecha de objetos?

 
Реter Konow:

Tengo preguntas concretas:

1. ¿tiene una fila de nombres de columna en la tabla, cuando se desplaza verticalmente, permanece inmóvil, o sale del campo de visibilidad? Pregunta similar acerca de la primera columna con nombres de fila - ¿se va a la izquierda cuando se mueve el control deslizante de desplazamiento horizontal hacia la derecha o no?

2. 2. ¿Cambia la anchura de las columnas?

3. ¿La tabla del ejemplo anterior está dibujada sobre lienzo o está hecha de objetos?

1. Estos modos son personalizables. Es decir, la primera fila y la primera columna pueden ser fijas (hechas cabeceras) y no se desplazarán con los datos de la tabla.

2. En este artículo, las actualizaciones se refieren a una tabla de tipo CTable. En ella, la anchura de las columnas se ajusta automáticamente a la anchura total de la tabla.

3. La tabla de tipo CTable está formada por objetos gráficos estándar de tipo OBJ_EDIT.

En los siguientes artículos (incluido éste) se pueden encontrar otros tipos de tabla y las actualizaciones que se han publicado para ellos:

También habrá actualizaciones para listas y tablas en los próximos artículos. Todavía queda mucho trabajo por hacer.

 
Anatoli Kazharski:

1. Estos modos son personalizables. Es decir, la primera fila y la primera columna pueden ser fijas (hechas cabeceras) y no se desplazarán con los datos de la tabla.

2. En este artículo, las actualizaciones se refieren a una tabla de tipo CTable. En ella, la anchura de las columnas se ajusta automáticamente a la anchura total de la tabla.

3. La tabla de tipo CTable está formada por objetos gráficos estándar de tipo OBJ_EDIT.

En los siguientes artículos (incluido éste) se pueden consultar otros tipos de tabla y las actualizaciones que se han publicado para ellos:

También habrá actualizaciones para listas y tablas en los próximos artículos. Aún queda mucho trabajo por hacer.

He leído este material en detalle en los artículos. En principio, las clases y métodos propuestos crean las tablas necesarias para el usuario y satisfacen con su nivel de calidad y consideración. Por supuesto, se puede añadir la posibilidad de insertar diferentes elementos (casillas de verificación, listas desplegables, por ejemplo) en las celdas de la tabla, pero esto es en el futuro.

Le aconsejo que piense en la intensidad de trabajo que supone utilizar la tecnología propuesta. Para ser objetivos, la intensidad de mano de obra sigue estando ahí.

El uso generalizado y la aplicación de estos avances también dependen de la facilidad de uso. Difícilmente se puede discutir esto....

Para simplificar el proceso de creación de tablas, sugeriría desarrollar un método sencillo para el usuario, mediante el cual creará la tabla necesaria sin aprender nada, pero teniendo en cuenta la necesidad de formar al usuario, digo que cuanto más intensivo en mano de obra - mejor ...

 
Реter Konow:

...

Para simplificar el proceso de creación de tablas, sugeriría desarrollar un método sencillo para que el usuario pueda crear una tabla sin aprender nada, pero teniendo en cuenta la necesidad de formación del usuario, diría que cuanto más laborioso sea mejor.....

Los aspectos internos de la biblioteca se describen en detalle para los desarrolladores. Es decir, para aquellas personas que estén aprendiendo a programar, estos ejemplos basados en un proyecto real serán muy útiles. Para los usuarios que no quieran romperse la cabeza creando una librería para crear interfaces gráficas, cada artículo tiene aplicaciones de prueba que muestran ejemplos sencillos de métodos de cómo crear tal o cual control.

Es extraño que después de leer todos los artículos de esta serie (y has dejado claro repetidamente que los has leído todos), necesites explicarme esto.

 
Anatoli Kazharski:

Los aspectos internos de la biblioteca se describen en detalle para los desarrolladores. Es decir, para aquellas personas que estén aprendiendo a programar, estos ejemplos basados en un proyecto real les serán muy útiles. Para los usuarios que no quieren complicarse la vida creando una librería para crear interfaces gráficas, cada artículo tiene aplicaciones de prueba que muestran ejemplos sencillos de métodos de cómo crear tal o cual control.

Es extraño que tú, después de leer todos los artículos de esta serie (y has dejado claro repetidamente que los has leído todos), necesites explicarme esto.

Desgraciadamente, todavía no he leído los artículos con atención. Normalmente, sólo me he fijado en los gráficos de las imágenes, ya que son la quintaesencia de todo el desarrollo.

Si empiezo a meterme en todo el código, me temo que tendré muchas veces más discrepancias contigo sobre el planteamiento.

Sin embargo, la utilidad de tus artículos para la enseñanza de programadores es evidente.

P.D. Para ser más preciso, creo que el trabajo y la práctica son la base del aprendizaje y la adquisición de habilidades. Hay que evitar "relajaciones" innecesarias en la enseñanza. Por ejemplo, - el uso de calculadoras en las escuelas primarias puede hacer que las clases de matemáticas carezcan de sentido. Resulta que si se dan calculadoras a los alumnos de primer curso, no aprenderán a contar correctamente. Hay que enseñarles a contar de memoria y explicárselo con los dedos. Pero, ¿y si a alguien le sale rentable vender esas calculadoras cerca de la escuela? ¿Qué hacemos entonces?

Creo que hay que explicar a los niños que no deben usar calculadoras, porque interferirán en su aprendizaje.... Los niños conscientes seguro que escuchan))).
 

gracias por el artículo.......

Bueno, ahora podemos fabricar paneles de la era espacial.

(queda pensar en qué utilizar toda esta riqueza).

 
Реter Konow:

Por desgracia, aún no he leído los artículos con atención. Normalmente, sólo me fijo en los gráficos de las fotos, ya que son la quintaesencia de todo el desarrollo.

Espero que sean pocos los lectores que sólo se fijan en las fotos. )

Para los usuarios habituales de la biblioteca habrá un artículo aparte, donde toda la atención se centrará en cómo utilizar la biblioteca, sin bucear en el funcionamiento interno de la biblioteca. Además, habrá una documentación detallada con la descripción de los métodos que están disponibles para un usuario desde su clase personalizada. Pero no será hasta dentro de un tiempo. Muchas funcionalidades útiles y necesarias serán implementadas antes de eso.

 
Anatoli Kazharski:

Espero que haya pocos lectores de este tipo que sólo se fijen en las fotos. )

Para los usuarios habituales de la librería, se preparará un artículo aparte, donde toda la atención se centrará en cómo usar la librería, sin bucear en la estructura interna. Además, habrá una documentación detallada con la descripción de los métodos que están disponibles para un usuario desde su clase personalizada. Pero aún falta un tiempo. Antes de eso, se implementarán muchas más funcionalidades útiles y necesarias.

Repito: por desgracia, todavía no he leído y profundizado en los matices de la implementación de su biblioteca. Esta es mi desventaja.

En el futuro, cuando tenga más tiempo libre, empezaré a estudiar tu librería desde el principio y entenderé todas las soluciones. Pero entonces, comentaré y criticaré en detalle y de forma técnicamente sólida todo lo que vea ineficaz y ofreceré otras soluciones en paralelo. Puede que no te guste, pero no puedo hacerlo de otra manera.


P.D. Lo que vais a hacer en el futuro es correcto. Seguir desarrollando la biblioteca.

 
Реter Konow:

...

En el futuro, cuando tenga más tiempo libre, empezaré a estudiar tu biblioteca desde el principio y entenderé todas las soluciones. Pero entonces, comentaré y criticaré en detalle y de forma técnicamente sólida todo lo que vea ineficaz y ofreceré otras soluciones en paralelo. Puede que no te guste, pero no puedo hacerlo de otra manera.

...

Sólo que antes de empezar a criticar, tendrás que leer toda la serie, ya que a partir de la 10ª parte se hacen adiciones y correcciones. Si sus soluciones serán técnicamente probadas, es decir, implementadas en código y podrán ser probadas, sobre cuya base será posible sacar conclusiones correctas, entonces no podré evitar que me gusten. Al contrario, me alegraré mucho. )

 
Anatoli Kazharski:

Sólo que antes de empezar a criticar, tendrás que leer toda la serie, ya que a partir de la 10ª parte se hacen adiciones y correcciones. Si sus soluciones serán técnicamente probadas, es decir, implementadas en código y podrán ser probadas, sobre cuya base será posible sacar conclusiones correctas, entonces no podré evitar que me guste. Al contrario, me alegraré mucho. )

Trato).