PDA

Ver la Versión Completa : No puedo editar StringGrid


Bael_Balzac
20-05-2011, 23:19:28
goEditing esta en True
goTab esta en True

No puedo editar las celdas en tiempo de ejecucion

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids;

type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
procedure StringGrid1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.StringGrid1Click(Sender: TObject);
begin
with StringGrid1 do
begin
Cells[0,0] := 'Nombre';
Cells[1,0] := 'Apellido paterno';
Cells[2,0] := 'Apellido materno';
Cells[3,0] := 'Nota Examen 1';
Cells[4,0] := 'Nota Examen 2';
Cells[0,1] := 'Pablo';
Cells[1,1] := 'Garcia';
Cells[2,1] := 'Martinez';
Cells[3,1] := '40';
Cells[4,1] := '36';
Cells[0,2] := 'Maria';
Cells[1,2] := 'Sanchez';
Cells[2,2] := 'Palazon';
Cells[3,2] := '50';
Cells[4,2] := '60';
Cells[0,3] := 'Carmen';
Cells[1,3] := 'Perez';
Cells[2,3] := 'Guillen';
Cells[3,3] := '70';
Cells[4,3] := '60';
end;
end;

end.

Caral
21-05-2011, 03:24:01
Hola
Editar ?.
En tiempo de ejecución ?
No entiendo, cual es el problema ?.
Saludos

ecfisa
21-05-2011, 03:56:11
Hola Bael_Balzac y bienvenido a los foros del Club Delphi.

En realidad el evento que has elegido para inicializar el TStringGrid no es el mejor, mejor hubiera sido el evento OnShow del form...

Ya que el evento OnClick del TStrinGrid 'generalmente' se dispara por el click del mouse pero tambien cuando:

The user selects an item in a grid, outline, list, or combo box by pressing an arrow key.
The user presses Spacebar while a button or check box has focus.
The user presses Enter when the active form has a default button (specified by the Default property).
The user presses Esc when the active form has a cancel button (specified by the Cancel property).
The user presses the accelerator key for a button or check box. For example, if the value of the Caption property of a check box is '&Bold', the B is underlined at runtime and the OnClick event of the check box is triggered when the user presses Alt+B.
The Checked property of a radio button is set to true.
The value of the Checked property of a check box is changed.
The Click method of a menu item is called.
Información de la ayuda de Delphi. (F1)

O sea que en realidad te permite editar, pero te sobreescribe lo editado al dispararse el evento OnClick por los alguno de los motivos arriba mencionados.

Si querés salir de dudas sólo agrega esta línea al inicio del código de tu evento OnClick: ShowMessage('OnClick');


Saludos.