Página 1 de 1

Controles Modernos

Publicado: Mié Jul 07, 2021 6:30 pm
por Arvisnet
1. Si se activa lCheckboxes en el ttreeviewmod, al agregar elementos con additem, el parámetro lchecked en true, no pone como activa la casilla del item que se agrega.

2. Al heredar tTreeviewmod de la clase tListboxmod, el evento oncheckstatechanged, no manda como parámetro el objeto item que lo detona, a diferencia de la clase ttreeview que en el mismo evento sí pasa como parámetro el objeto item que lo detona, esta diferencia hace muy dificil saber en el control moderno con que objeto item se va a trabajar por lo que en mi opinión hay una incompatibilidad entre el control "original" y su "homólogo" moderno.

3. Trato de entender cual es la razón de que las propiedades nModalresult, lCancel y lDefault no estén incluidas en los botones modernos.

4. Por qué el comportamiento del Tdbcomboboxmod es diferente el Tdbcombobox cuando se elige en la propiedad nDataType la opción dtBOUND?. Pues mientras en el TDBCombobox una vez que se elige el elemento de aitems, se muestra en la forma el valor de aitems[nindex] y se almacena en el datacontrol el valor de aitemsbound[nindex]. En el combobox moderno, para empezar no se puede elegir dtBound cuando tipo de campo es caracter siempre devuelve el nindex y no el valor de aitemsbound[nindex] por lo que se genera un error de ejecución.
Saludos

Re: Controles Modernos

Publicado: Jue Jul 08, 2021 6:54 pm
por ignacio
Hola,

1) Corregido.

2) No ha sido nuestra intención mantener completamente la compatibilidad. Al gestionarse todos los eventos a nivel superior (TreeView), preferimos indicar su posición. El código para acceder al item es bien simple:

Código: Seleccionar todo

oTree:OnCheckStateChanged := {|Self, nItem, lNewValue| LogDebug( Self:GetItemAtPos( nItem ):cText ) } 
3 ) Incoporado nModalResult y lCancel

4) Necesitaríamos un pequeño ejemplo.

Un saludo

Re: Controles Modernos

Publicado: Vie Jul 09, 2021 2:25 am
por Arvisnet
Ignacio,

1. para el comboboxmod con ndatatype dtBOUND, el problema es que en los eventos onChange y onExit una vez elegido un elemento de la lista el valor de nIndex es 0, por lo que no evalua la tabla aitemsbound.

2. Las correcciones anteriores puntos 1 y 3 como las puedo obtener ?

Saludos