不知道谁遇到过这样的情况没有:
我有一个窗体,里面有msflexgrid控件,读出了数据,这个窗体在我自己的电脑上打印(打印机在一个财务那里),一切正常;但是把生成的文件放到财务的电脑上直接在她那里打印却发现msflexgrid控件里的数据打印不出来,打印显示的结果是第一行(表头)呈黑色。她自己打印别的东西都是正常的,不知何故。请各位分析一下可能的原因,谢谢!
现在不在公司,没有代码,请分析一下可能的原因就好。

解决方案 »

  1.   

    看看在你编程时使用的字体在那个财务的电脑里有没有安装一样的字体?使用什么方法打?printform还是printer。print还是其它?
    “打印显示的结果是第一行(表头)呈黑色-->打印显示的结果是只有一行(表头)呈一条黑带.”可能的原因是由于一些原因,打印时没有换行,结果把每一行的内容都打了在同一行,叠加起来就变了一条黑色带。
      

  2.   

    printform;
    换过行了,在我的机器上执行系统,在她的打印机上打印,没有问题;
    我还试过别人的电脑,也连的财务的打印机,还是没发现啥毛病,正常。
      

  3.   

    Printer.ScaleMode = vbMillimeters打印开头加这个试试
      

  4.   

    财务的不让我在那里折腾了,郁闷中……
    有病不让看,那我也不知道是什么原因了。
    不过我也是连的她的打印机,打印都好好的;
    现在看到的不是一条黑色,而是这个表格部分整个都是黑的,别的label啥的打印正常。
      

  5.   

    LZ:建议不要采用PrintForm,那涉及VB内部的图形转换,其质量无法保证,可以采用遍历msflexgrid控件关联的数据集,通过Printer对象执行打印.具体方法可参考http://zhidao.baidu.com/question/4168806.html