如何对字段进行选择打印?(100分)

  • 主题发起人 主题发起人 yyhua
  • 开始时间 开始时间
Y

yyhua

Unregistered / Unconfirmed
GUEST, unregistred user!
相当于我建了一个小数据表,有20个字段,客户的要求是能选择性的打印
请问各位大侠,用什么方式最简单?如果是用report,应该怎么实现?最好能把
代码写出来!不盛感激!!!
 
你既然知道用report组件,就找这方面的资料,都有讲
 
report不能用程序控制,可把REPORT界面直接给客户自己拖动。
或者把数据导入EXCEL中处理
 
动态输出报表不可以吗?
 
procedure TForm1.Button1Click(Sender: TObject);
var
i, j: Integer;
s: string;
begin

if DBGrid1.SelectedRows.Count>0 then

with DBGrid1.DataSource.DataSetdo

for i:=0 to DBGrid1.SelectedRows.Count-1do

begin

GotoBookmark(pointer(DBGrid1.SelectedRows.Items));
for j := 0 to FieldCount-1do

begin


if (j>0) then
s:=s+', ';
s:=s+Fields[j].AsString;
end;

Listbox1.Items.Add(s);
s:= '';
end;

end;

这段代码把选择的字段放到一个ListBox里面,
你可以选择放到一个可以支持打印的Grid控件里面.
 
bubble:我试了你的这段代码,发现没有把字段放在listbox里呀!是什么原因呢?
 
snjat:把REPORT界面直接给客户自己拖动如何实现?
 
看你怎么做了,不用程序写的话,直接把编辑界面给客户就行了,只是客户要了解具体的操作
 
DBGrid的option里面
dgRowSelect设置true
dgMultiselect设置true
按住Ctrl加鼠标多选,就可以了。
 
我所要的并非这样的效果,我说的是,选择数据库里的字段,比如:
数据库内有如下字段:A,B,C,D,E;现在我只要打印A,B,C三个字段;
这样能实现吗?
 
如果不要预览则直接将结果输出到打印机
 
用ExLib控件中的DBGridEh,
可以把DBGridEh上的内容输出到打印机,
只需要进行指定DBGridEh上的Columns中的显示内容
 
如果不用第三方控件,用动态创建呢?
 
用Exlib或ScreenReport直接打印DbGrid的内容即可。否则也许只能用程序控制QR的输出
(并不复杂,onneeddata的时候控制一下就可以了)。
 
请问:Exlib在哪能下得到?
 
http://mydelphi.xoasis.com/download/ehlib154.exe
 
多人接受答案了。
 
后退
顶部