本人最近使用DELPHI开发小程序过程中,制作打印报表时发现如下情况,不知采用何种办法是好!
请各位多多指教! 在FORM下添加 ADODataset1 、DBGrid1、及 frReport1 等控件, 其中frReport 与 DBGrid共同使用一个 ADODataset1 数据集对象,当我预览 frReport时,问题发生了。观察DBGrid 的当前选择行由上至下滚动起来,这很不好! 我希望frReport 预浏或打印时不会影响 dbgrid中的当前行移动!
无论是qucikReport或是 fastReport 都是这样的! 不知各位有什么好办法? 先谢谢了!
请各位多多指教! 在FORM下添加 ADODataset1 、DBGrid1、及 frReport1 等控件, 其中frReport 与 DBGrid共同使用一个 ADODataset1 数据集对象,当我预览 frReport时,问题发生了。观察DBGrid 的当前选择行由上至下滚动起来,这很不好! 我希望frReport 预浏或打印时不会影响 dbgrid中的当前行移动!
无论是qucikReport或是 fastReport 都是这样的! 不知各位有什么好办法? 先谢谢了!
//开始打印
ADOQuery1.EnableControls;
try
//开始打印
finally
ADODataSet1.EnableControls;
end;
DBGridEh1.DataSource.DataSet.DisableControls;
RMReport2.PrepareReport;
RMReport2.ShowReport;
DBGridEh1.DataSource.DataSet.First;
DBGridEh1.DataSource.DataSet.EnableControls;
设置frReport的DataSet属性为frDBDataSet1, ADOQuery1.DisableControls; //加上这句打印时,速度会快很多
ADOQuery1.First;
try
frReport1.LoadFromFile('文件名');
frReport1.ShowReport;
finally
ADOQuery1.EnableControls;
end;