ID Number: Q80912
1.00
WINDOWS
buglist1.00
Summary:
The Visual Basic Graph custom control cannot successfully print
directly to a Hewlett-Packard (HP) II series LaserJet. This is a
compatibility issue between the Graph custom control and the HP II
series only. It is not a problem with Visual Basic.
Microsoft has confirmed this to be a problem with the Graph custom
control supplied with Microsoft Professional Toolkit for Microsoft
Visual Basic programming system version 1.0 for Windows. We are
researching this problem and will post new information here as it
becomes available.
More Information:
The Visual Basic Graph custom control version 1.2 allows you to send a
graph image directly to your printer by setting the graph's DrawMode
property to 5 (print). However, the Graph control is incompatible with
the HP II LaserJet family. When using the DrawMode=5 (print) method to
print to an HP II LaserJet, only a portion of the graph will print.
Workaround
----------
A workaround is to add an additional form to the project, transfer the
graph's image to the form, and then print the form. This method
bypasses the DrawMode=5 (print) method and the incompatibility issue.
The example below describes how to implement this workaround.
Note: Unless you know that your graph will never be printed on an HP
II Series LaserJet, you may wish to always use this print method.
Example
-------
1. Start Visual Basic. Form1 will be created by default.
2. From the File menu, choose Add File, and select the GRAPH.VBX
custom control file. The Graph tool will appear in the Toolbox.
3. Add another form (Form2).
4. Change the following properties for Form2:
Property Value
-------- -----
ControlBox False
MaxButton False
MinButton False
Caption False
5. On Form1, create a Graph control (Graph1) and a command button
(Command1). Set Command1.caption= "Print".
6. Size and edit Graph1 so that it appears the way you want it to
print.
7. Add the following code to the Command1_Click event:
Sub Command1_Click ()
'change to black/white for clearer printing
Graph1.DrawStyle = 0
'update change to black/white
Graph1.DrawMode = 2
Load Form2
'size Form2 and transfer Graph1's image
Form2.width = Graph1.width
Form2.height = Graph1.height
Form2.picture = Graph1.picture
Form2.visible = 1 'optional
Form2.PrintForm
'return Graph1 to display in color (optional)
Graph1.DrawStyle = 1
'update display to color
Graph1.DrawMode = 2
End Sub
8. From the Run menu, choose Start (ALT R, S) and click on the command
button.
Unless you specify otherwise, Graph1 will originally be displayed in
color. Once the Command1_Click event is triggered, the graph will
convert to black and white. If you exclude the optional line
Form2.visible=1, a dialog box will appear stating that Form2 is being
printed. Graph1 will convert back to a color display, and the program
will end.
If you included the optional line Form2.visible=1, then you will see
Form2 appear and resize with the black and white graph image as its
picture. A dialog box will appear stating that Form2 is being printed.
Graph1 will convert back to a color display and the program will end.
Additional reference words: 1.00 H-P HPII