Página 1 de 1

Browse moderno

Publicado: Sab Ene 08, 2022 7:33 am
por bingen
Buenas xTeam y demás usuarios, feliz año a todos.

Me disponía a incorporar el nuevo browse a mis aplicaciones por que veo que tiene muchas mas posibilidades y es mas vistoso, moderno no?

Pero según me pongo a trabajar veo alguna carencia sobre el browse "estándar" no existen los métodos AdjustCols o StretchCols y a pesar de que ajusta mucho mejor las anchuras de las columnas que su primo "estándar" solo se pueden realizar a mano y no por código.

Alguna solución?

Gracias.

Re: Browse moderno

Publicado: Lun Ene 10, 2022 5:38 pm
por ignacio
Buenas tardes,

Estará en la próxima revisión de Xailer.

Un saludo

Re: Browse moderno

Publicado: Mié Ene 12, 2022 5:49 pm
por bingen
Ya que estamos con él y como curiosidad el nClrAltPane no me da error al compilar pero no hace nada de nada.

Y como hago que al tener un filtro y al mostrarse el browse, en vez de situarse el foco en el filtro se situe en las líneas del browse?

De hecho me situo por código en la última línea editada que tengo guardada, pongamos que la 9 de 20 y ahora quiero ir a la 7 y le doy a la flecha para arriba y no va pero por que está en el filtro y no en la línea que aparece como seleccionada.

Otro problema que veo es que al ser las barras e desplazamiento "retractiles" y mostrarse cuando se acerca el ratón a ellas, la vertical no hay problema pero la horizontal abajo no te deja seleccionar la última línea del browse con el ratón a no ser que pongas la altura de las líneas mas grande que la altura de la barra, pongamos que 30 y así y todo con dificultad, además de hacer que el browse sea muchísimo más largo, logicamente. Bastaría quizás con un delay en la aparición de la scrollbar.

No se si me he explicado bien.

Gracias

Re: Browse moderno

Publicado: Jue Ene 13, 2022 6:06 pm
por ignacio

Código: Seleccionar todo

Y como hago que al tener un filtro y al mostrarse el browse, en vez de situarse el foco en el filtro se situe en las líneas del browse?
Flecha abajo y te sitúas en el Browse.

Código: Seleccionar todo

Y como hago que al tener un filtro y al mostrarse el browse, en vez de situarse el foco en el filtro se situe en las líneas del browse?
El foco no cambia al establecer por código un filtro:

Código: Seleccionar todo

::oBrowseMod1:aCols[1]:oHeaderCol:cFilter := "Ro"
(Nota: Corregido para que funcione aCol[?]:cFilter)
Si se quiere forzar el foco al browse se puede hacer: oBrowse:oDataGrid:SetFocus()

Código: Seleccionar todo

De hecho me situo por código en la última línea editada que tengo guardada, pongamos que la 9 de 20 y ahora quiero ir a la 7 y le doy a la flecha para arriba y no va pero por que está en el filtro y no en la línea que aparece como seleccionada.
Para establecer el focus en el grid:

Código: Seleccionar todo

oBrowse:oDataGrid:SetFocus() 
Otro problema que veo es que al ser las barras e desplazamiento "retractiles" y mostrarse cuando se acerca el ratón a ellas, la vertical no hay problema pero la horizontal abajo no te deja seleccionar la última línea del browse con el ratón a no ser que pongas la altura de las líneas mas grande que la altura de la barra, pongamos que 30 y así y todo con dificultad, además de hacer que el browse sea muchísimo más largo, logicamente. Bastaría quizás con un delay en la aparición de la scrollbar
Habrá que poner un retraso, miraré la forma de ponerlo.

Un saludo

Re: Browse moderno

Publicado: Jue Ene 13, 2022 7:42 pm
por ignacio
Nueva propiedad en todos los controles que pueden ocultar las barras de scroll:

PROPERTY nScrollShowDelay INIT 1000 // 1 segundo

Re: Browse moderno

Publicado: Vie Ene 14, 2022 7:20 pm
por bingen
Muchísimas gracias Ignacio

Ya he probado el GridEdit:Setfocus y 100% Ok.

Todas las mejoras serán muy bienvenidas.