Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi cxgrid:ApplyBestFit猛拉_Delphi_Devexpress_Tcxgrid - Fatal编程技术网

Delphi cxgrid:ApplyBestFit猛拉

Delphi cxgrid:ApplyBestFit猛拉,delphi,devexpress,tcxgrid,Delphi,Devexpress,Tcxgrid,我运行以下查询: procedure TForm1.cxButton1Click(Sender: TObject); begin cxGrid1DBTableView1.ClearItems; DataModule2.ACRQuery1.Close; DataModule2.ACRQuery1.SQL.Clear; DataModule2.ACRQuery1.SQL.Text := ADVMemo1.Lines.Text; AdvMemo1.UpdateWrap(); try DataModu

我运行以下查询:

procedure TForm1.cxButton1Click(Sender: TObject);
begin
cxGrid1DBTableView1.ClearItems;
DataModule2.ACRQuery1.Close;
DataModule2.ACRQuery1.SQL.Clear;
DataModule2.ACRQuery1.SQL.Text := ADVMemo1.Lines.Text;
AdvMemo1.UpdateWrap();
try
 DataModule2.ACRQuery1.Open;
 except
   on E:Exception do
   begin
     MessageDlg('Napaka pri izvedbi : ' + E.ClassName,
                mtError, [mbOK], 0);
   end;
   end;
 cxGrid1DBTableView1.DataController.CreateAllItems;
 cxGrid1DBTableView1.ApplyBestFit();
end;
但是,当查询显示在网格中时,我注意到,在一瞬间,列会正常显示,然后应用最佳拟合。 看起来像个混蛋

现在,我不知道这种行为是出于设计还是我在错误的地方应用了拟合。我能做些什么来避免这种情况

由于Uli的建议,这似乎改善了情况:

cxGrid1DBTableView1.DataController.CreateAllItems;
cxGrid1DBTableView1.BeginUpdate(); 
cxGrid1DBTableView1.ApplyBestFit();
cxGrid1DBTableView1.EndUpdate();

尝试添加一对
BeginUpdate
/
EndUpdate
对。

尝试在两行周围添加一对
BeginUpdate
/
EndUpdate
对。@Uli Gerhardt你的建议奏效了,所以你应该得到奖励。如果你愿意,你可以发布答案。很高兴听到!完成。:-)实际上,只有在创建了所有项之后,否则会出现索引越界错误…我相应地简化了我的答案。:-)