How To Print the Contents of the MS Chart Control

Article translations Article translations
Article ID: 168749 - View products that this article applies to.
This article was previously published under Q168749
Expand all | Collapse all

SUMMARY

The MSChart control does not expose a method that enables you to print the chart directly. However, you can use the PrintForm method to print the entire form containing the MSChart control. This article describes a method for printing only the chart.

MORE INFORMATION

You can print the chart of an MSChart control by copying the contents of the control using the EditCopy method, retrieveing the chart from the Clipboard, and then printing the picture via the PaintPicture method of the Printer object:
  1. Start a new Standard EXE project. Form1 is created by default.
  2. Click Components on the Project menu. Check "Microsoft Chart Control" and click OK.
  3. Draw an MSChart control and a CommandButton on Form1.
  4. Add the following code to the Click event of Command1 on Form1:
          MSChart1.EditCopy
          DoEvents   ' may be needed for large datasets
          Printer.Print " "
          Picture1.PaintPicture Clipboard.GetData(), 0, 0
          Printer.EndDoc
    
    						
  5. Run the application. Click the CommandButton to print the chart to your default printer.

    NOTE: The EditCopy method copies both the data and the picture of the chart to the clipboard. Then, when you use a Paste command to retrieve the contents of the clipboard, the receiving application determines whether the picture or the data is pasted. In this example, PaintPicture requests the clipboard data and receives a picture of the chart rather than the chart's data. You could also specify this with Clipboard.GetData(vbCFBitmap).

Properties

Article ID: 168749 - Last Review: July 1, 2004 - Revision: 5.1
APPLIES TO
  • Microsoft Visual Basic 5.0 Learning Edition
  • Microsoft Visual Basic 6.0 Learning Edition
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition
  • Microsoft Visual Basic 6.0 Enterprise Edition
Keywords: 
kbhowto kbprint kbctrl KB168749

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com