• Domingo 22 de Diciembre de 2024, 13:10

Autor Tema:  Msflexgrid.removeitem  (Leído 8186 veces)

UserCode

  • Miembro MUY activo
  • ***
  • Mensajes: 338
    • Ver Perfil
Msflexgrid.removeitem
« en: Viernes 29 de Junio de 2007, 23:02 »
0
hola muchachos, que tal le ha ido con quien ha hecho uso del .RemoveItem de un MSFlexgrid

Yo lleno un MSFlexgrid en memoria al seleccionar unos Item de un Combobox asi:

Código: Text
  1.  
  2.     MSF.Rows = MSF.Rows + 1
  3.     MSF.Row = MSF.Rows - 1
  4.  
  5.     MSF.Col = 1
  6.     MSF.Text = cmbDescripcion.Text
  7.    
  8.     MSF.Col = 2
  9.     MSF.Text = cmbDesc1.Text
  10.      
  11.     MSF.Col = 3
  12.     MSF.Text = txtMonto1.Text
  13.  
  14.  

Pero no he podido ver bien como armar el codigo sin que de errores del Remover en caso de desear quitar un agregado al MSFlexgrid

Estaba probando algo como esto pero no me ha servido:
Código: Text
  1.  
  2.     For i = 1 To MSF.Rows - 1
  3.         MSF.Row = i
  4.         MSF.Col = i
  5.     Next
  6.     MSF.RemoveItem (MSF.Row)
  7.  
  8.  

Alguien ha logrado o sabe como hacer un correcto uso del RemoveItem del MSFlexgrid sin morir en el intento  :unsure:
Si esto es Leído por accidente, induzca al vomito

rfuentevilla

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Msflexgrid.removeitem
« Respuesta #1 en: Sábado 7 de Julio de 2007, 18:52 »
0
Cita de: "UserCode"
hola muchachos, que tal le ha ido con quien ha hecho uso del .RemoveItem de un MSFlexgrid

Yo lleno un MSFlexgrid en memoria al seleccionar unos Item de un Combobox asi:

Código: Text
  1.  
  2.     MSF.Rows = MSF.Rows + 1
  3.     MSF.Row = MSF.Rows - 1
  4.  
  5.     MSF.Col = 1
  6.     MSF.Text = cmbDescripcion.Text
  7.     
  8.     MSF.Col = 2
  9.     MSF.Text = cmbDesc1.Text
  10.     
  11.     MSF.Col = 3
  12.     MSF.Text = txtMonto1.Text
  13.  
  14.  

Pero no he podido ver bien como armar el codigo sin que de errores del Remover en caso de desear quitar un agregado al MSFlexgrid

Estaba probando algo como esto pero no me ha servido:
Código: Text
  1.  
  2.     For i = 1 To MSF.Rows - 1
  3.         MSF.Row = i
  4.         MSF.Col = i
  5.     Next
  6.     MSF.RemoveItem (MSF.Row)
  7.  
  8.  

Alguien ha logrado o sabe como hacer un correcto uso del RemoveItem del MSFlexgrid sin morir en el intento  :unsure:
 :blink: No te entiendo lo q quieres hacer. de lo que entendi quieres eliminar las filas de un flexgri, si es asi lo que yo he realizadoes lo sigt. :
if msf.rows=2 then
    for pp=0 to msf.cols-1
           msf.textmatrix(1,pp)=""
    next
else
     msf.removeitem(msf.row)
endif

UserCode

  • Miembro MUY activo
  • ***
  • Mensajes: 338
    • Ver Perfil
Re: Msflexgrid.removeitem
« Respuesta #2 en: Miércoles 11 de Julio de 2007, 14:37 »
0
Viendo un codigo que no tenia mucho que ver con lo mio, extraje de internet y arme lo mio, bueno asi quedo, ya no me da error esto asi  :P
Código: Text
  1.  
  2. Private Sub MSHF_KeyPress(KeyAscii As Integer)
  3.     If KeyAscii = 100 Then 'd
  4.         If MSHF.Row > 1 Then
  5.             MSHF.RemoveItem (MSHF.Row)
  6.             MSHF.Refresh
  7.         ElseIf MSHF.Row = 1 Then
  8.             MSHF.Clear: MSHF.Rows = 1
  9.             MSHF.Col = 1: MSHF.Row = 0: MSHF.Text = "Descripción"
  10.             MSHF.Col = 2: MSHF.Row = 0: MSHF.Text = "Monto"
  11.         End If
  12.     End If
  13. End Sub
  14.  
  15.  
Activo o ejecuto esto con la tecla "d" porque no logre capturar y hacerse activar el Ascii de la tecla Delete, el If Keyascii tenia el numero Ascii de la tecla Del o Supr, y por más que le daba, solo servia la validacion con las teclas de siempre del teclado para escribir, pero las que se encuentran del lado derecho del teclado como Insert, Supr, etc para la validación Keyascii era como si no hubiese pulsado nada  :blink:
Si esto es Leído por accidente, induzca al vomito

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: Msflexgrid.removeitem
« Respuesta #3 en: Miércoles 11 de Julio de 2007, 16:37 »
0
Cita de: "UserCode"
Activo o ejecuto esto con la tecla "d" porque no logre capturar y hacerse activar el Ascii de la tecla Delete, el If Keyascii tenia el numero Ascii de la tecla Del o Supr, y por más que le daba, solo servia la validacion con las teclas de siempre del teclado para escribir, pero las que se encuentran del lado derecho del teclado como Insert, Supr, etc para la validación Keyascii era como si no hubiese pulsado nada  :blink:
Para utilizar las teclas 'especiales' de funciones y demas

debes usarlo en los eventos
  • KeyDown</li>
  • KeyUp</li>
en lugar de KeyPress

utilizando el parametro KeyCode en lugar de KeyAscii para obtener la tecla presionada,  tambien pasa otro parametro Shift que es por si se utilizó alguna combinacion al presionar la tecla y puede contener los siguientes valores

Parametro Shift:

Valor - Tecla
Código: Text
  1. 1- Shift
  2. 2- Ctrl
  3. 3- Ctrl + Shift
  4. 4- Alt
  5. 5- Shift + Alt
  6. 6- Ctrl + Alt
  7. 7- Shift+ Ctrl + Alt
  8.  

Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================

UserCode

  • Miembro MUY activo
  • ***
  • Mensajes: 338
    • Ver Perfil
Re: Msflexgrid.removeitem
« Respuesta #4 en: Miércoles 11 de Julio de 2007, 16:54 »
0
:good:
Si esto es Leído por accidente, induzca al vomito

sergiofelix

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Re: Msflexgrid.removeitem
« Respuesta #5 en: Sábado 21 de Julio de 2007, 02:28 »
0
Cita de: "UserCode"
hola muchachos, que tal le ha ido con quien ha hecho uso del .RemoveItem de un MSFlexgrid

Yo lleno un MSFlexgrid en memoria al seleccionar unos Item de un Combobox asi:

Código: Text
  1.  
  2.     MSF.Rows = MSF.Rows + 1
  3.     MSF.Row = MSF.Rows - 1
  4.  
  5.     MSF.Col = 1
  6.     MSF.Text = cmbDescripcion.Text
  7.     
  8.     MSF.Col = 2
  9.     MSF.Text = cmbDesc1.Text
  10.     
  11.     MSF.Col = 3
  12.     MSF.Text = txtMonto1.Text
  13.  
  14.  

Pero no he podido ver bien como armar el codigo sin que de errores del Remover en caso de desear quitar un agregado al MSFlexgrid

Estaba probando algo como esto pero no me ha servido:
Código: Text
  1.  
  2.     For i = 1 To MSF.Rows - 1
  3.         MSF.Row = i
  4.         MSF.Col = i
  5.     Next
  6.     MSF.RemoveItem (MSF.Row)
  7.  
  8.  

Alguien ha logrado o sabe como hacer un correcto uso del RemoveItem del MSFlexgrid sin morir en el intento  :unsure:
por lo que dices "quitar la ultima fila no fija" deseas quitar todas las filas, para eso solo inicializa tu msflexgrid

msflexgrid.rows=1
msflexgrid.cols=2
msflexgrif.formatstring="codigo  | " & vbtab & "Descripcion                           |"

vbtab = hace que automaticamente de cambie de celda a la derecha en ma misma fila

UserCode

  • Miembro MUY activo
  • ***
  • Mensajes: 338
    • Ver Perfil
Re: Msflexgrid.removeitem
« Respuesta #6 en: Lunes 23 de Julio de 2007, 00:00 »
0
Bueno yo termine con esto, me va muy bien con eso B) igual tomo nota para otras formas, todos los caminos conducen a roma  :P
Código: Text
  1.  
  2. Private Sub MSHF_KeyDown(KeyCode As Integer, Shift As Integer)
  3.     If KeyCode = 46 Then 'Delete
  4.         If MSHF.Row &#62; 1 Then ' 1 es el tamaño en fila del grid - 1, o sea MshFlexGrid.Rows - 1
  5.             MSHF.RemoveItem (MSHF.Row)
  6.             MSHF.Refresh
  7.         ElseIf MSHF.Row = 1 Then
  8.             MSHF.Clear: MSHF.Rows = 1
  9.             MSHF.Col = 1: MSHF.Row = 0: MSHF.Text = &#34;Descripción&#34;
  10.             MSHF.Col = 2: MSHF.Row = 0: MSHF.Text = &#34;Monto&#34;
  11.         End If
  12.     End If
  13. End Sub
  14.  
  15.  
Si esto es Leído por accidente, induzca al vomito