Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

MSHFlexGrid Congelado

Estas en el tema de MSHFlexGrid Congelado en el foro de Visual Basic clásico en Foros del Web. Tengo una aplicación que actualiza un MSHFlexGrid con un listado de productos a través de recordset. A medida que se va escribiendo alguna parte de ...
  #1 (permalink)  
Antiguo 24/11/2005, 16:08
 
Fecha de Ingreso: noviembre-2005
Mensajes: 1
Antigüedad: 18 años, 5 meses
Puntos: 0
MSHFlexGrid Congelado

Tengo una aplicación que actualiza un MSHFlexGrid con un listado de productos a través de recordset. A medida que se va escribiendo alguna parte de la descripción del producto en un cuadro de texto, entonces el MSHFlexGrid va filtrando sólo los productos que cumplan esa condición. Luego de eso, yo necesito hacer doble click en alguna de las filas que me quedan y que esa información pase a unos cuadros de texto. El problema consiste en que a veces necesito seleccionar por ejm. la cuarta fila, pero no puedo, ya que el control queda como si se le hubierado puesto la propiedad Enabled.False y me recupera lo de la primera fila únicamente. Cuando el control presenta este problema tengo que salirme del form y volver a entrar.

Yo he solucionado un poco el problema con este código:
A, B, C son variables.

If mshfgFlexGrid.Cols >= 2 Then: B = 2: Else: B = 1
If mshfgFlexGrid.Rows >= 2 Then: C = 2: Else: B = 1
mshfgFlexGrid.FixedCols = B
mshfgFlexGrid.FixedRows = C
mshfgFlexGrid.FixedCols = 1
mshfgFlexGrid.FixedRows = 1

Sin embargo, este código tiene el problema que siempre me lleva el foco a la primera fila y luego tengo que volver a la fila deseada (lo cual es un poco molesto para el usuario final).

Cualquier ayuda, mi email es [email protected]
  #2 (permalink)  
Antiguo 24/11/2005, 18:32
Avatar de hernanmdq  
Fecha de Ingreso: julio-2005
Ubicación: Argentina - Entre Rios
Mensajes: 167
Antigüedad: 18 años, 9 meses
Puntos: 1
Creo que tendrias que usar las variables "Focusrect = 0", "Highlight = 1" y "SelectionMode = 1". Asi las uso yo y no tengo ningun problem en seleccionar cada fila por separado, luego tomar el .row actual y manipular los datos.
Espero te sirva salu2.
__________________
| Codigo Geek | Blog de Cine |
  #3 (permalink)  
Antiguo 25/11/2005, 00:47
Avatar de ramoncito  
Fecha de Ingreso: febrero-2003
Ubicación: Viña del Mar
Mensajes: 224
Antigüedad: 21 años, 2 meses
Puntos: 10
otra recomendación, es que la grilla comienza a dejar de filtrar en forma automatica cuando el recordset al que está enlasada se cierra, verifica eso, por otra parte la forma más sana que utilizo yo para capturar datos es que en el evento click de la grilla capturo los datos como dice hernandmdq de :

prueba colocando esto para que seleccionas

msgbox grilla.textmatrix(grilla.row, 1 (posicion de campo nombre ej))

y ahi deberias ver pork falla...
__________________
:pensando: Ramon Martinez... Chile :adios:
  #4 (permalink)  
Antiguo 01/12/2005, 05:51
 
Fecha de Ingreso: octubre-2003
Ubicación: Chaco - Argentina
Mensajes: 49
Antigüedad: 20 años, 6 meses
Puntos: 0
creeria que tu problema es este: despues de que el filtrado da un recordset vacío... el MSHFlexGrid tiene problemas... tendrías q ver este articulo....

ERROR: Flexgrid Row jerárquico o selección de celdas fallan después de enlazarse a un conjunto de registros vacío

Y este es mi post con el problema: MSHFlexGrid problema con recordset sin registros

Saludos y suerte

edite el link que estaba mal puesto....

Última edición por chefo; 01/12/2005 a las 06:48
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:30.