PDA

Ver la Versión Completa : StringGrid y el problema del Vacio...


papulo
07-09-2005, 11:59:54
Estoy intentando usar una StringGrid sin demasiado exito.

Es de 3x3, y quiero rellenar la primera columna con nombres propios, y las otras dos con iconos.
Ahora bien, mirando la ayuda, lo que me ha inspirado a sido lo siguiente:

(que comience el espectaculo)


begin
StringGrid1.
StringGrid1.cells[0,1]:='Alternador';
StringGrid1.cells[0,2]:='M.Arranque';
StringGrid1.cells[0,3]:='MC.Continua';
end;


Ahora bien, con eso consigo escribir en la colmna gris (otra cosa que quiero cambiar y si es posible hacerla seleccionable) esos nombres.
¿Para saber que fila esta seleccionada?
StringGRid.Row (acltualizado) Si es eso lo que necesitaba.

AFilth
07-09-2005, 12:52:14
No entiendo muy bien la pregunta q estas haciendo. Si lo q quieres es saber q fila tienes seleccionada bastara con poner:

NumeroDeFila: Integer;
NumeroDeFila := StringGrid1.Row;

papulo
07-09-2005, 13:13:20
procedure TFiller.cSupplierNameKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = (VK_F2) or (VK_F3) then
ConsultaF;
end;


¿Que le falla a la sentencia? Ejecutandolo no me hace ni caso.

Aprieto los F2 y F3 en un combobox pero me ignora totalmente.

EDITADO: Era problema del la "ConsultaF2"

Perdon...

dec
07-09-2005, 13:29:42
Hola,

Si no me equivoco deberías hacer algo así:


procedure TFiller.cSupplierNameKeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
if (Key = VK_F2) or (Key = VK_F3) then
ConsultaF;
end;

papulo
08-09-2005, 16:38:44
Cierto, me habia dejado ese detallito.

Pronto comenzare a pelearme con las columnas de la Stringrid.

Para proximas dudas, proximos hilos.

Nos vemooooooooos :p

dec
09-09-2005, 03:35:39
Hola,

El código de más arriba funciona, pero, tal vez no te disguste este otro, que también parece ir bien: ;)


procedure TForm1.FormKeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
if Key in [VK_F2, VK_F3] then ConsultaF;
end;

papulo
09-09-2005, 12:36:39
¿Este codigo que has puesto, compara en un rango comprendido entre los valores del corchete [VK_F1, VK_F6] o solo con los valores definidos dentro dle corchete?

jmariano
09-09-2005, 12:58:18
Para que se compare un rango la sentencia tendrías que ser: [VK_F1..VK_F6], pero, como verás, al estar separados por comas, entonces, sólo comparará los valores definidos en el corchete.

Saludos!