procedure TForm1.StringGrid1Exit(Sender: TObject); begin ShowMessage(IntToStr(StringGrid1.Col)+':'+inttostr(StringGrid1.Row)); end;
stringgrid的onSetEditText事件里写,例如下面代码判断第二行第二列是否是数字型的字符串procedure TKCSJFForm.sgdSetEditText(Sender: TObject; ACol, ARow: Integer; const Value: String); begin try if (ACol=1) and (ARow=1) then begin if sgd.cells[1,1] <> '' then StrToFloat(sgd.cells[ACol, ARow]); end; except Application.MessageBox('请输入有效数值!', '警告', MB_ICONWARNING); exit; end; uf_jsKCF();end;
procedure TForm1.StringGrid1Exit(Sender: TObject);
begin
ShowMessage(IntToStr(StringGrid1.Col)+':'+inttostr(StringGrid1.Row));
end;
const Value: String);
begin try
if (ACol=1) and (ARow=1) then
begin
if sgd.cells[1,1] <> '' then
StrToFloat(sgd.cells[ACol, ARow]);
end;
except
Application.MessageBox('请输入有效数值!', '警告', MB_ICONWARNING);
exit;
end;
uf_jsKCF();end;
实际上我是要实现在STRINGgrid中的计算功能。比如输入CELL[1,1]=5,CELL[2,1]=6,自动计算CELL[3,1]=30
。本来在StringGrid1KeyDown中添加判断回车时,可以实现,但有时操作时,在输入CELL[2,1]后,不是按回车,而是直接点击另一个单元格,这样CELL[3,1]就不会变化。不知各位如何解决