我在Form上放了一个StringGrid1控件,并且在FormCreate的时候,在StringGrid1里面显示了文本。现在在Form上有个按钮,我点击这个按钮的时候,执行了SQL语句。我想做到点击这个按钮的时候,首先清空StringGrid1,然后出现提示性文字,然后再执行SQL语句。procedure TFormMain.ToolButton9Click(Sender: TObject);
var
i:integer;
j:integer;
begin
//清空StringGrid1
for i := 0 to StringGrid1.RowCount - 1 do
for j := 0 to StringGrid1.ColCount - 1 do
begin
StringGrid1.Cells[j,i] := '';
end;
//StringGrid1
StringGrid1.Cells[0,1]:='程序运行状态:';
StringGrid1.Cells[1,1]:='正在删除表table1';//清空table1表原有数据
with ADOQuery1 do
begin
close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('delete from table1);
ADOQuery1.ExecSQL;
StringGrid1.Cells[1,1]:='表table1删除成功';
end;
end;我现在比较奇怪的是为什么按下按钮的时候,StringGrid1没有立即显示
//StringGrid1
StringGrid1.Cells[0,1]:='程序运行状态:';
StringGrid1.Cells[1,1]:='正在删除表table1';
而是等到SQL执行完毕的时候才会出现
StringGrid1.Cells[1,1]:='表table1删除成功';
请教各位大虾。不胜感谢。
var
i:integer;
j:integer;
begin
//清空StringGrid1
for i := 0 to StringGrid1.RowCount - 1 do
for j := 0 to StringGrid1.ColCount - 1 do
begin
StringGrid1.Cells[j,i] := '';
end;
//StringGrid1
StringGrid1.Cells[0,1]:='程序运行状态:';
StringGrid1.Cells[1,1]:='正在删除表table1';//清空table1表原有数据
with ADOQuery1 do
begin
close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('delete from table1);
ADOQuery1.ExecSQL;
StringGrid1.Cells[1,1]:='表table1删除成功';
end;
end;我现在比较奇怪的是为什么按下按钮的时候,StringGrid1没有立即显示
//StringGrid1
StringGrid1.Cells[0,1]:='程序运行状态:';
StringGrid1.Cells[1,1]:='正在删除表table1';
而是等到SQL执行完毕的时候才会出现
StringGrid1.Cells[1,1]:='表table1删除成功';
请教各位大虾。不胜感谢。
Application.ProcessMessages;试一试 StringGrid1.Cells[0,1]:='程序运行状态:';
StringGrid1.Cells[1,1]:='正在删除表table1';
var
i:integer;
j:integer;
begin
//清空StringGrid1
for i := 0 to StringGrid1.RowCount - 1 do
for j := 0 to StringGrid1.ColCount - 1 do
begin
StringGrid1.Cells[j,i] := '';
end;
//StringGrid1
StringGrid1.Cells[0,1]:='程序运行状态:';
StringGrid1.Cells[1,1]:='正在删除表table1'; Sleep(2000); //加一句试试!//清空table1表原有数据
with ADOQuery1 do
begin
close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('delete from table1);
ADOQuery1.ExecSQL;
StringGrid1.Cells[1,1]:='表table1删除成功';
end;
end;
//清空table1表原有数据
前作一个停顿就行了。
zzllabc(抱朴子--清心释累,绝率忘情)的方法是正确的。