也就是我点一个按钮,两个打印机,同时打印一份东西不知道有什么方法实现还有就是这样的打印的两台打印机要怎么连最好是有代码,给我
我打印的是点菜的小票,
我以前没有打印过小票,
能不能给写代码

解决方案 »

  1.   

    我的两台打印机是由一台电脑连的我现在有个想法,你们看看可以不就是有两台,A、B
    把A设置成默认的
    打印
    把B设置成默认的
    打印我用FASTREPORT3.0
    yegongzi(浪子阿开) 你好,你能不能把你的打印程序给我
    最好是设置纸张大小的地方,说明写一些
    小弟在这先谢谢了
    带星的那位说法和我哥的一样
    都是能人呀
    谢谢了还有那位也谢谢了 
      

  2.   

    打印中可以选择输出打印机,
    打印两遍即可:
    .......
        printer.PrinterIndex:=0;
        frreport.Print;
        printer.PrinterIndex:=1;
        frreport.Print;
      

  3.   

    fanself(雨轩客) 
    你好 不过我想问问
    是不是就这样写就可以呀
    就能打印出来如果是三台的话是不是就是这样的
        printer.PrinterIndex:=0;
        frreport.Print;
        printer.PrinterIndex:=1;
        frreport.Print;    printer.PrinterIndex:=2;
        frreport.Print;
      

  4.   

    弄一个窗口,添加一个TComboBox控件,把所有的打印机都读进来,再取得要使用的第二台打印的PinterIndex,保存到文件里,下次打印时读出来更改PinterIndex的值就可以解决多台打印机的问题了。
      

  5.   

    我有一个想法,没有实施过,仅供参考:
    我的想法是制作两个报表文件,并且在报表文件中定义好默认的打印机,使用中只需调用报表文件就可以了。
    首先,安装两台打印机A和B,如果你是用针打,B可以参考LQ300K+,既支持串口又支持并口
    下来,制作两个fastreport报表文件,默认打印机分别是A和B
    最后,在程序设计中,点击打印按钮后先调用A报表并打印,再调用B报表并打印
      

  6.   

    yegongzi(浪子阿开)
    你好,你能不能把pos机的打印格式说给我听
    就是纸张的大小等等
    谢谢
      

  7.   

    pos机我用的是75mm宽度的,其实就算你用a4也是可以的,只要把字靠左就可以了.pos机打印的时候是连续的,也就是不用考虑设其高度.其他都一样.你如果fastreport作是很方便的,你可以装上一个pos的驱动利用预览来看就可以了
      

  8.   

    我是这么写的
    //设置默认打印机的
    procedure TForm1.Button1Click(Sender: TObject);
    var
    MyHandle : THandle; 
    MyDevice, 
    MyDriver, 
    MyPort: array [0..255] of Char;
    begin
    Printer.PrinterIndex := ComboBox1.ItemIndex;
    Printer.GetPrinter(MyDevice,MyDriver,MyPort,MyHandle);
    StrCat( MyDevice, ','); 
    StrCat( MyDevice, MyDriver ); 
    StrCat( MyDevice, ',');
    StrCat( MyDevice, MyPort ); 
    WriteProfileString('WINDOWS','DEVICE',MyDevice);
    SendMessage(HWND_BROADCAST,WM_WININICHANGE,0,LongInt(pChar('windows')));  
    end;
    //读取本机所有的打印机
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    Printer.PrinterIndex := -1;    
    ComboBox1.Style := csDropDownList; 
    ComboBox1.Items := Printer.Printers; 
    ComboBox1.ItemIndex := Printer.PrinterIndex;
    end;//调用
    procedure TForm1.Button1Click(Sender: TObject);
    var
    i:integer;
    begin
    for i := 0 to combobox2.Items.Count-1 do
    begin
      combobox2.ItemIndex := 1;
      Button1Click(Sender);
      frxReport1.PrepareReport;
      frxReport1.PrintOptions.Printer := 'Default';
      frxReport1.PrintOptions.PrintPages :=ppall;
    //上三行是不用设置打印配置,直接打印的  frxreport1.Print;
    end;我没有在打印机上试,我是在自己的机器上随便加了两个打印机
    也试出了两台打印机都有反映了