医院的收费系统中打印票据,格式已经固定了,怎么样打印到它的格子中去?各位兄弟请指点一下小弟,有实例更好?

明行 2001-12-05 05:18:53
...全文
480 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
marcal 2002-03-07
  • 打赏
  • 举报
回复
我也做过这样固定格式的打印,所以我有兴趣
明行 2002-03-05
  • 打赏
  • 举报
回复
我用笨办法,用报表,控点距就可以了嘛。
fangrk 2002-01-07
  • 打赏
  • 举报
回复
我自己总结出来的步骤:
1.打印坐标,方便对照格式
Printer()->BeginDoc();
for(int i=0;i<=Printer()->PageWidth;i+=100)
for(int j=0;j<=Printer()->PageHeight;j+=100)
Printer()->Canvas->TextOut(i,j,'*');
Printer()->EndDoc();

2.对照格式,拟写出对应位置的坐标,如果打印有规律的话(比如要有表格),设置控制线,方便修改
例如:const int X[]={200,300,450,800,1150};//垂直分隔线
3.把数据放到对应的坐标上打印:Printer()->Canvas->TextOut(x坐标,y坐标,内容);
打印表格:
Printer()->Canvas->MoveTo(x1,y1);
Printer()->Canvas->LineTo(x2,y2);

4.关于对齐问题:
在分界线X[0],X[1]中打印字符串myString:
左对齐:Printer()->Canvas->TextOut(X[0]+5,j,myString);
中对齐:int len=X[1]-X[0]-Printer()->Canvas->TextWidth(myString);
Printer()->Canvas->TextOut(X[0]+len/2,j,myString);
右对齐:Printer()->Canvs->TextOut(X[1]-5-len,j,myString);
TonySteele 2001-12-13
  • 打赏
  • 举报
回复
还有谁做过,请将你们的实例在此公布一下,或者发到我的邮箱。谢谢各位!!!
TonySteele@163.net 
明行 2001-12-07
  • 打赏
  • 举报
回复
谢谢各位特别是fangrk(4inlove......) ,以后给分,时间有点长可能在一个月后,请不要在意.
谢谢!
xiaoyu 2001-12-07
  • 打赏
  • 举报
回复
1.使用priter对象,不过要多次试验,计算位置
2.使用formula one控件(activex控件),类似excel
自己设置票据的格式,在特定的位置,如[2][5]
填写数据,然后打印
fangrk 2001-12-07
  • 打赏
  • 举报
回复
Printer()->BeginDoc();
PHeight=Printer()->PageHeight/3;
PWidth=Printer()->PageWidth/2+100;
Printer()->Canvas->Font->Size=12;
Printer()->Canvas->Font->Name="MS Sans Serif";
Memo1->Clear();
MemoLine=0;
Memo1->Lines->Strings[MemoLine++]=
AnsiString::StringOfChar(' ',80)+
AnsiString(buff[1])+AnsiString::StringOfChar(' ',30)+
"日期:"+date+"\r\n";//格式
//Memo1->Lines->Strings[MemoLine++]=......
TY=Y;
for(i=0;i<Memo1->Lines->Count;i++)
{ Printer()->Canvas->TextOut(X,Y,Memo1->Lines->Strings[i]);
Printer()->Canvas->TextOut(X+PWidth,Y,Memo1->Lines->Strings[i]);
Y+=18;
}
X=0;
Y=TY+PHeight;
if(++PageNum ==3)
{ PageNum=0;
Printer()->NewPage();
Y=0;
}
Printer()->EndDoc();
ciml 2001-12-06
  • 打赏
  • 举报
回复
另外这样的打印机有什么特别之处吗?我看见过,格式已经做好,
然后将其放入打印机中,将内容打印在上面
我也想知道
关注!!!!!!
TonySteele 2001-12-06
  • 打赏
  • 举报
回复
先做一个同实物一样大小的票据,将它放到一个OLE中,如Panel中
fangrk 2001-12-06
  • 打赏
  • 举报
回复
我以前做过一个。
把数据按照一定的格式存放在一个Memo中,然后把Memo种的数据打印出来。
源程序在公司里,明天再说的详细一些!
cmpp 2001-12-06
  • 打赏
  • 举报
回复
我来学习一下!
明行 2001-12-06
  • 打赏
  • 举报
回复
继续讨论。
CyberUFO 2001-12-06
  • 打赏
  • 举报
回复
~~~~~~~~~~~~
希望有好办法!
明行 2001-12-05
  • 打赏
  • 举报
回复
TR@SOE
叶老大
过江项羽
及各位知道这个方法的兄弟们。

IUNKNOWN_COM 2001-12-05
  • 打赏
  • 举报
回复
套打嗎,慢慢試呀,還有什麼辦法?

13,870

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧