晚上就回去了,发表一个问题大家讨论下!
公司的标签打印机一次出三张小标签,出过的标签不能继续使用,如图:
在实际工作中,经常打印几十张标签,但是每种标签的数量不固定,目前采用的是每种标签打印3的倍数,1张也打印3张。
(我目前是用三个PictureBox显示的标签,打印代码:
e.Graphics.DrawImage(PictureBox1.Image, 20, 0, 90, 58)
e.Graphics.DrawImage(PictureBox2.Image, 154, 0, 90, 58)
e.Graphics.DrawImage(PictureBox3.Image, 288, 0, 90, 58)
想做到在打印的时候,同时输入打印数量,让标签纸可以自动往前靠。
如图:
求自动往前靠的思路和实现方法!
[解决办法]
随便写一下好了:
int 列=0;for(var i =0; i< 标签数组.length; i++){ 列++; if(列==1) { PictureBox1.Image= 加载Image(标签数组[i]); e.Graphics.DrawImage(PictureBox1.Image, 20, 0, 90, 58) } else if(列==2) { PictureBox2.Image= 加载Image(标签数组[i]); e.Graphics.DrawImage(PictureBox2.Image, 154, 0, 90, 58) } else if(列==3) { PictureBox3.Image= 加载Image(标签数组[i]); e.Graphics.DrawImage(PictureBox3.Image, 288, 0, 90, 58) 打印并且换页(); 列=0; } }if(列!=0){ 打印并且换页();}
[解决办法]
没有,可能需要很多代码才能完成。
我看看我用D写的代码。
[解决办法]
int 列=0;int 行=0;for(var i =0; i< 标签数组.length; i++){ 列++; 行++; if(列==1) { PictureBox1.Image= 加载Image(标签数组[i]); e.Graphics.DrawImage(PictureBox1.Image, 20, 0, 90, 58) } else if(列==2) { PictureBox2.Image= 加载Image(标签数组[i]); e.Graphics.DrawImage(PictureBox2.Image, 154, 0, 90, 58) } else if(列==3) { PictureBox3.Image= 加载Image(标签数组[i]); e.Graphics.DrawImage(PictureBox3.Image, 288, 0, 90, 58) if(行==10) { 打印并且换页(); 行=0; } 列=0; } }if(列!=0){ 打印并且换页();}
[解决办法]