Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Como habilitar una sola fila del TstringGrid (https://www.clubdelphi.com/foros/showthread.php?t=61700)

FAGD 18-11-2008 21:38:27

Como habilitar una sola fila del TstringGrid
 
Buenas tardes

Les escribo para ver quien me puede ayudar con mi problema.
Es el siguiente tengo un formulario de pedidos en el cual meto el nro de pedido
y el me trae toda la informacion del pedido ademas me trae el detalle del pedido en un TstringGrid. ese Detalle yo me lo traigo de manera que no se pueda actualizar .

Ahora el problema que me surge es que cuando yo realizo una inspeccion del detalle del pedido que esta en el sistema con el que yo tengo un fisico hay veces que existen (diferencias, faltantes , excedentes ) y lo q pretendo hacer es que cuando consiga que hace falta algo al pedido que esta en el sistema le doy click a un radiobutton el cual agrega una fila mas al TstringGrid PERO DESABILITADA ya que lo la desabilito al traer la consulta . ahora bien como puedo hacer para activar solo esa fila sin que las demas queden deshabilitadas.

gracias por la ayuda de antemano

le adjunto la imagen del formulario para que tengan un mejor entendimiento de mi problema

gracias y saludos

coso 18-11-2008 22:17:18

Hola, puedes 'deshabilitarla' tu por codigo en el momento de hacer algo con ella (en el evento DblClick, etc)

Código Delphi [-]
if StringGrid.Row <> fila_a_editar then exit
else
...

Caro 19-11-2008 11:29:44

Hola FAGD, yo lo haría de esta forma.

Digamos que para aumentar una fila lo haces así

Código Delphi [-]
 StringGrid1.RowCount := StringGrid1.RowCount+1;
 NuevaFila := StringGrid1.RowCount-1; //Guardamos la nueva fila

y para no permitirle escribir solo en esa fila:

Código Delphi [-]
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
 if ARow=NuevaFila then
  StringGrid1.Options := StringGrid1.Options + [goEditing]
 else
  StringGrid1.Options := StringGrid1.Options - [goEditing];
end;

Saluditos


La franja horaria es GMT +2. Ahora son las 06:58:21.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi