我现在想打印两个chart控件和若干个Label,不知道如何能够把他们组合在一起打印出来,如果用form的print方法的话,会打印出其他的我不需要的按钮菜单等控件,请高手指点

解决方案 »

  1.   

    可以把label的内容输出到 tchart的canvas上然后在打印。
      

  2.   

    to findcsdn
    具体如何实现呢?能不能给段代码参考参考?谢谢了
      

  3.   

    label的内容是不是可以考虑放到chart里去,连续打印两个chart可以这么做。
    var
      curRect:TRect;
    begin
      ...
      Printer.BeginDoc;
      //print char1
      CurRect.Top :=0;
      CurRect.Bottom :=chart1.height;
      CurRect.left:=0;
      Currect.right:=printer.pagewidth;
      chart1.PrintPartialCanvas(Printer.Canvas,CurRect);
      //print chart2
      CurRect.Top :=chart1.height+10;
      CurRect.Bottom :=chart1.height+chart2.height;
      CurRect.left:=0;
      Currect.right:=printer.pagewidth;
      chart1.PrintPartialCanvas(Printer.Canvas,CurRect);
      Printer.EndDoc;
      ...
    end;