Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus-es / 2012-12

stringgrid loquito...

9 messages · 3 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Paola Bruccoleri

Hola todos..
o es el stringgrid o yo ! pero me va a enloquecer; hace un comportamiento raro.
Cargo un stringgrid con lo q tiene pendiente de pagar un cliente. La col de mas a la izq es un checkbox que al cargar los datos le pongo valor '1' para que quede con el checkbox por defecto.

En el evento SelectCell hago esto para q el usuario pueda marcar o no cada item a pagar:

   if grdPendiente.Cells[0, aRow] = '1' then
      grdPendiente.Cells[0, aRow] := '0'
   else
      grdPendiente.Cells[0, aRow] := '1'

Si llego a poner una marca para depurar en ese if.. zasss se me enchastra todo y no puedo ni ejecutar el programa porque de entrada nom�s, ANTES de siquiera elegir un cliente, se queda ejecutando eso. Claro, en el onShow del form hago esto para que al ppio el stringgrid quede vac�o:

   grdPendiente.RowCount:= 1;

entonces a lo mejor se dispara eso.

pero eso no es el l�o: el l�o est� que al cargar la primera vez el stringgrid, si hago clic en un rengl�n, se me desmarca ese rengl�n y se marca el de abajo y viceversa.. o sea, al rev�s!.. es dif�cil mostrarlo a no ser que haga un video!...

este comportamiento se arregla cuando por ej paso un nuevo rengl�n, entonces vuelvo a vaciar el stgrid y vuelvo a cargarlo de nuevo..

tienen idea a qu� podr� deberse?? desde hoy estoy probando varias cosas sin resultado!
se agradece cq idea
byeeeeeeeeeeee

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20121212/231e6130/attachment.html> ------------ pr�xima parte ------------
A non-text attachment was scrubbed...
Name: moz-screenshot-6.png
Type: image/png
Size: 5526 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20121212/231e6130/attachment.png>

Reply by email

Jesus Reyes
to Paola Bruccoleri

--- El mi� 12-dic-12, Paola Bruccoleri <pbruccoleri en adinet.com.uy> escribi�:

De: Paola Bruccoleri <pbruccoleri en adinet.com.uy> Asunto: [Lazarus-es] stringgrid loquito...
A: "Lista Lazarus" <lazarus-es en lists.lazarus.freepascal.org> Fecha: mi�rcoles, 12 de diciembre de 2012, 11:22

En el evento SelectCell hago esto para q el usuario pueda marcar o no cada item a pagar:

    � if grdPendiente.Cells[0, aRow] = '1' then
    ���� grdPendiente.Cells[0, aRow] := '0'
    � else
    ���� grdPendiente.Cells[0, aRow] := '1'

....
tienen idea a qu� podr� deberse?? desde hoy estoy probando varias cosas sin resultado!

se agradece cq idea

byeeeeeeeeeeee

Es tu stringgrid editable? (ver Options->goEditing), por que cuando es editable, el grid hace eso autom�ticamente. Jesus Reyes A.
------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20121212/3bdd2303/attachment.html>

Reply by email

Paola Bruccoleri
to Jesus Reyes
Show quoted text 8 lines
Es tu stringgrid editable? (ver Options->goEditing), por que cuando es editable, el grid hace eso autom�ticamente. Jesus Reyes A.

Hola Jes�s!
no.. no es editable, reci�n mir�; no quiero modificar nada a excepci�n del checkbox.
aparte hay algo m�s raro.. cuando el stringgrid tiene 1 solo rengl�n, y como tb tengo en el mismo form otro dbgrid con datos de OTRO query, es como si se me enredaran: hago clic en stringgrid, se desmarca el chechbox.. si sigo haciendo clic all� no marca m�s nada.. sin embargo si hago clic en el dbgrid, se me marca con el checkbox el rengl�n del stringgrid!

El mismo comportamiento es con lazarus 0.9.31 y 1.0.2 muchas gracias!

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20121212/52c9d508/attachment.html>

Reply by email

Jesus Reyes
to Paola Bruccoleri

--- El mi� 12-dic-12, Paola Bruccoleri <pbruccoleri en adinet.com.uy> escribi�:

De: Paola Bruccoleri <pbruccoleri en adinet.com.uy> Asunto: Re: [Lazarus-es] stringgrid loquito...
A: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Fecha: mi�rcoles, 12 de diciembre de 2012, 12:07

Es tu stringgrid editable? (ver Options->goEditing), por que cuando es editable, el grid hace eso
autom�ticamente.

Jesus Reyes A.

Hola Jes�s!

no.. no es editable, reci�n mir�; no quiero modificar nada a excepci�n del checkbox.
En ese caso te recomiendo que de todos modos pongas el grid como editable, luego crea un evento OnSelectEditor, en el c�digo manipulador de �ste evento tan solo especifica que no quieres ning�n editor, es decir begin� Editor := nil;end;
Esto tendr�a el efecto de hacer al grid como solo lectura, pero funcionar� en tu caso por que cbCheckboxColumn no usa realmente un control editor.

aparte hay algo m�s raro.. cuando el stringgrid tiene 1 solo rengl�n, y como tb tengo en el mismo form otro dbgrid con datos de OTRO query, es como si se me enredaran: hago clic en stringgrid, se desmarca el chechbox.. si sigo haciendo clic all� no marca m�s nada.. sin embargo si hago clic en el dbgrid, se me marca con el checkbox el rengl�n del stringgrid!

El mismo comportamiento es con lazarus 0.9.31 y 1.0.2

muchas gracias!

Eso me suena mas a un problema de manipulaci�n dentro de tu programa que a un problema del Stringgrid o DbGrid, de cualquier manera, si de todos modos piensas que es un problema de los grids, por favor, crea un proyecto de ejemplo y lo mirar�.

Jesus Reyes A.

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20121212/a04865f6/attachment-0001.html>

Reply by email

Paola Bruccoleri
to Jesus Reyes

Hola Jes�s.

El 12/12/2012 05:31 p.m., Jesus Reyes escribi�:

Show quoted text 39 lines
--- El *mi� 12-dic-12, Paola Bruccoleri /<pbruccoleri en adinet.com.uy>/* escribi�: De: Paola Bruccoleri <pbruccoleri en adinet.com.uy> Asunto: Re: [Lazarus-es] stringgrid loquito... A: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Fecha: mi�rcoles, 12 de diciembre de 2012, 12:07 > > Es tu stringgrid editable? (ver Options->goEditing), por que > cuando es editable, el grid hace eso autom�ticamente. > > > Jesus Reyes A. > > Hola Jes�s! no.. no es editable, reci�n mir�; no quiero modificar nada a excepci�n del checkbox. En ese caso te recomiendo que de todos modos pongas el grid como editable, luego crea un evento OnSelectEditor, en el c�digo manipulador de �ste evento tan solo especifica que no quieres ning�n editor, es decir begin Editor := nil; end; Esto tendr�a el efecto de hacer al grid como solo lectura, pero funcionar� en tu caso por que cbCheckboxColumn no usa realmente un control editor.

ya hice eso..

Show quoted text 16 lines
aparte hay algo m�s raro.. cuando el stringgrid tiene 1 solo rengl�n, y como tb tengo en el mismo form otro dbgrid con datos de OTRO query, es como si se me enredaran: hago clic en stringgrid, se desmarca el chechbox.. si sigo haciendo clic all� no marca m�s nada.. sin embargo si hago clic en el dbgrid, se me marca con el checkbox el rengl�n del stringgrid! El mismo comportamiento es con lazarus 0.9.31 y 1.0.2 muchas gracias! Eso me suena mas a un problema de manipulaci�n dentro de tu programa que a un problema del Stringgrid o DbGrid, de cualquier manera, si de todos modos piensas que es un problema de los grids, por favor, crea un proyecto de ejemplo y lo mirar�.

la cosa mejor�..solo un poquito... con ese cambio ahora ya no joroba que haga clic en otro de los dbgrids, pero.... no me funciona nada el marcar/desmarcar el checkbox..
lo raro que si lo vuelvo a cargar de nuevo, queda bien... no tengo claro que es lo que estar� haciendo mal para que esto no funcione.. yo no digo que no sea yo la culpable! :) y ojal� sea yo porque entonces es arreglable! jaja

muchas gracias!

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20121212/53b301b4/attachment.html>

Reply by email

Paola Bruccoleri
to Paola Bruccoleri

El 12/12/2012 06:04 p.m., Paola Bruccoleri escribi�:

Show quoted text 70 lines
Hola Jes�s. El 12/12/2012 05:31 p.m., Jesus Reyes escribi�: > > > --- El *mi� 12-dic-12, Paola Bruccoleri /<pbruccoleri en adinet.com.uy> > <mailto:pbruccoleri en adinet.com.uy>/* escribi�: > > > De: Paola Bruccoleri <pbruccoleri en adinet.com.uy> > <mailto:pbruccoleri en adinet.com.uy> > Asunto: Re: [Lazarus-es] stringgrid loquito... > A: "Spanish version of Lazarus List" > <lazarus-es en lists.lazarus.freepascal.org> > <mailto:lazarus-es en lists.lazarus.freepascal.org> > Fecha: mi�rcoles, 12 de diciembre de 2012, 12:07 > > >> >> Es tu stringgrid editable? (ver Options->goEditing), por que >> cuando es editable, el grid hace eso autom�ticamente. >> >> >> Jesus Reyes A. >> >> > Hola Jes�s! > no.. no es editable, reci�n mir�; no quiero modificar nada a > excepci�n del checkbox. > > En ese caso te recomiendo que de todos modos pongas el grid como > editable, luego crea un evento OnSelectEditor, en el c�digo > manipulador de �ste evento tan solo especifica que no quieres ning�n > editor, es decir > > begin > Editor := nil; > end; > > Esto tendr�a el efecto de hacer al grid como solo lectura, pero > funcionar� en tu caso por que cbCheckboxColumn no usa realmente un > control editor. > > ya hice eso.. > aparte hay algo m�s raro.. cuando el stringgrid tiene 1 solo > rengl�n, y como tb tengo en el mismo form otro dbgrid con datos > de OTRO query, es como si se me enredaran: hago clic en > stringgrid, se desmarca el chechbox.. si sigo haciendo clic all� > no marca m�s nada.. sin embargo si hago clic en el dbgrid, se me > marca con el checkbox el rengl�n del stringgrid! > > El mismo comportamiento es con lazarus 0.9.31 y 1.0.2 > muchas gracias! > > Eso me suena mas a un problema de manipulaci�n dentro de tu programa > que a un problema del Stringgrid o DbGrid, de cualquier manera, si de > todos modos piensas que es un problema de los grids, por favor, crea > un proyecto de ejemplo y lo mirar�. > > la cosa mejor�..solo un poquito... con ese cambio ahora ya no joroba que haga clic en otro de los dbgrids, pero.... no me funciona nada el marcar/desmarcar el checkbox.. lo raro que si lo vuelvo a cargar de nuevo, queda bien... no tengo claro que es lo que estar� haciendo mal para que esto no funcione.. yo no digo que no sea yo la culpable! :) y ojal� sea yo porque entonces es arreglable! jaja

le coment� todo el c�digo al evento SelectCell y sucede exactamente lo mismo; no puedo intercambiar los valores del stringgrid en la col del checkbox

Si alguien tiene un ejemplo que esto funcione se lo agradezco... es para ver que es lo que est� pasando; sino, desistir� de usar checkboxes y usar alguna otra forma de marcar determinados registros... byeeeeeeeeee

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20121212/073f7e63/attachment.html>

Reply by email

Jesus Reyes
to Paola Bruccoleri

le coment� todo el c�digo al evento SelectCell y sucede exactamente lo mismo; no puedo intercambiar los valores del stringgrid en la col del checkbox

Si alguien tiene un ejemplo que esto funcione se lo agradezco... es para ver que es lo que est� pasando; sino, desistir� de usar checkboxes y usar alguna otra forma de marcar determinados registros...

byeeeeeeeeee

Este es el ejemplo que pides:

1. Project->New Project2. Coloca un stringgrid en el formulario y selecci�nalo.3. En el Insp. Obj. Selecciona la propiedad "Options" y marca el elemento "goEditing" de tal manera que muestre "true"4. En el Insp. Obj. crea un evento OnSelectEditor, en el c�digo escribe: Editor:=nil;4. En el Insp. Obj. Selecciona la propiedad "Columns" y presiona el boton [...] que aparece al seleccionar la propiedad "Columns".5. En el editor de columnas que aparece, a�ade 3 columnas, quedar� un grid con 4 columnas, la primera es fija.6. Selecciona la primer columna en el editor de columnas y en el Insp. Obj. cambia la propiedad ButtonStyle a cbsCheckboxColumn7. Ejecuta el programa. Esto deber�a ser todo lo que se necesita para obtener el efecto deseado, el �nico c�digo en este ejemplo es Editor:=nil en el �nico m�todo existente que es el manipulador de eventos para OnSelectEditor. Por cierto, el evento OnSelectCell para el grid de Lazarus solo sirve para indicarle si una celda puede o no seleccionarse, y puede ser llamado m�ltiples veces por el grid, este comportamiento esta documentado en http://wiki.lazarus.freepascal.org/Grids_Reference_Page#Grid.27s_cell_selection De nuevo, si tienes un ejemplo que demuestre que esto no esta funcionado bien, mu�stralo. Jesus Reyes A.
------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20121212/59e0bab2/attachment-0001.html>

Reply by email

Maxi
to Jesus Reyes

El 12 de diciembre de 2012 18:56, Jesus Reyes <jesusrmx en yahoo.com.mx>escribi�:

Show quoted text 49 lines
le coment� todo el c�digo al evento SelectCell y sucede exactamente lo mismo; no puedo intercambiar los valores del stringgrid en la col del checkbox Si alguien tiene un ejemplo que esto funcione se lo agradezco... es para ver que es lo que est� pasando; sino, desistir� de usar checkboxes y usar alguna otra forma de marcar determinados registros... byeeeeeeeeee Este es el ejemplo que pides: 1. Project->New Project 2. Coloca un stringgrid en el formulario y selecci�nalo. 3. En el Insp. Obj. Selecciona la propiedad "Options" y marca el elemento "goEditing" de tal manera que muestre "true" 4. En el Insp. Obj. crea un evento OnSelectEditor, en el c�digo escribe: Editor:=nil; 4. En el Insp. Obj. Selecciona la propiedad "Columns" y presiona el boton [...] que aparece al seleccionar la propiedad "Columns". 5. En el editor de columnas que aparece, a�ade 3 columnas, quedar� un grid con 4 columnas, la primera es fija. 6. Selecciona la primer columna en el editor de columnas y en el Insp. Obj. cambia la propiedad ButtonStyle a cbsCheckboxColumn 7. Ejecuta el programa. Esto deber�a ser todo lo que se necesita para obtener el efecto deseado, el �nico c�digo en este ejemplo es Editor:=nil en el �nico m�todo existente que es el manipulador de eventos para OnSelectEditor. Por cierto, el evento OnSelectCell para el grid de Lazarus solo sirve para indicarle si una celda puede o no seleccionarse, y puede ser llamado m�ltiples veces por el grid, este comportamiento esta documentado en http://wiki.lazarus.freepascal.org/Grids_Reference_Page#Grid.27s_cell_selection De nuevo, si tienes un ejemplo que demuestre que esto no esta funcionado bien, mu�stralo. Jesus Reyes A. _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

pero no debes usar el selectcell, porque hace eso que tu le dices, tiene que ser en el onclickcell o onclickrow

El que pregunta aprende, y el que contesta aprende a responder. No a la obsolecencia programada: http://dimensionargentina.blogspot.com/2011/01/todo-esta-disenado-para-romperse.html Linux User #495070 http://domonetic.com/blog ------------ pr�xima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20121212/b1a2c2c9/attachment.html>

Reply by email

Paola Bruccoleri
to Maxi

Hola MAxi y todos..

pero no debes usar el selectcell, porque hace eso que tu le dices, tiene que ser en el onclickcell o onclickrow

esos eventos tal cual no existen; al final, lo puse en el evento onclick, averiguando por la fila/columna.
Comenc� tb a aular c�digo a ver si hab�a algo que estaba mal, y ten�a en el evento onEditingDone de un teditbutton esto: stringgrid1.RowCount:= 1; Ese era el �nico control de ese tipo del form, donde luego de tipear se inicializan el resto de las cosas.. modifiqu� otras cosas (agregu� otros controles) no solo por el error sino por otras necesidades, y ahora ya no aparece ese comportamiento loquito.
En fin.... agradezco a todos por las sugerencias ya que me permitieron encontrar el problema, aunque todav�a no tengo claro el porqu�. byeeeeeeeeee

Reply by email