DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: pabinbin
今日帖子: 25
在线用户: 21
导航: 论坛 -> 数据库专区 斑竹:liumazi,waterstone  
作者:
男 ercnet (莫木) ★☆☆☆☆ -
盒子活跃会员
2003/12/30 12:59:14
标题:
怎样打印LISTVIEW中的数据?? 浏览:1757
加入我的收藏
楼主: 怎样打印LISTVIEW中的数据??
----------------------------------------------
-
作者:
男 bios (阿贡) ★☆☆☆☆ -
盒子中级会员
2003/12/30 13:16:58
1楼: procedure Tmainform.mmprintcurrentClick(Sender: TObject);
var
  x1,x2,x3,w,y,linespace,i,count:integer;
  mu,mc,yb,qh:string;
begin
  count:=mainform.listView1.Items.Count ;
  if count=0 then
  begin
    showmessage('列表框中无打印内容!');
    exit;
  end;
  y:=0;
  printer.BeginDoc ;
  w:=printer.Canvas.TextWidth('字');
  x1:=13*w;
  x2:=16*w;
  x3:=21*w;
  linespace:=getdevicecaps(handle,logpixelsY) div 10 +printer.Canvas.TextHeight('阿');
  for i:=0 to count-1 do
  begin
    mu:=mainform.ListView1.Items[i].caption;
    mc:=mainform.ListView1.Items[i].subitems.strings[0];
    yb:=mainform.listview1.items[i].subitems.strings[1];
    qh:=mainform.listview1.items[i].subitems.strings[2];
    if y=0 then
    begin
      printer.Canvas.TextOut(0,0,'名称');
      printer.Canvas.TextOut(x1,0,'区号');
      printer.canvas.textout(x2,0,'邮编');
      printer.canvas.textout(x3,0,'所属');
      y:=y+linespace;
    end;
    if not printer.Aborted then
    begin
      printer.Canvas.TextOut(0,y,mc);
      printer.Canvas.TextOut(x1,y,yb);
      printer.Canvas.TextOut(x2,y,qh);
      printer.Canvas.TextOut(x3,y,mu)
    end;
    y:=y+linespace;
    if y>0.8*printer.PageHeight  then
    begin
      y:=0;
      printer.NewPage ;
    end;
  end;
    printer.EndDoc ;
----------------------------------------------
按此在新窗口浏览图片
按此在新窗口浏览图片
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行70.3125毫秒 RSS