Article ID: 166908 - Last Review: December 10, 2003 - Revision: 2.0 FIX: ScaleMode for Printer Object Can't Create Custom ScaleThis article was previously published under Q166908 On This PageSYMPTOMS
In Microsoft Visual Basic version 5.0, when you set the Printer object's
ScaleMode property to vbUser (0) to create a user-defined custom coordinate
system, the behavior of the Printer object does not change. While the value
of the ScaleMode property displays as zero (0), the Printer object behaves
as if the ScaleMode property has not changed from its previous value, which
is usually the default value of one (1).
RESOLUTION
To work around this problem, use the Scale method to create a user-defined
custom coordinate system instead of using the ScaleMode property. You can
specify a custom scale using the following syntax:
where the values of x1 and y1 determine the settings of the ScaleLeft and ScaleTop properties, and the differences between the two x-coordinates and the two y-coordinates determine the settings of ScaleWidth and ScaleHeight, respectively. STATUS
Microsoft has confirmed this to be a bug in the Microsoft products listed
at the beginning of this article. This bug has been fixed in Visual Studio
97 Service Pack 2.
For more information on the Visual Studio 97 Service Pack 2, please see the following article in the Microsoft Knowledge Base: 170365
(http://support.microsoft.com/kb/170365/EN-US/
)
: INFO: Visual Studio 97 Service Packs - What, Where, and Why
For a list of the Visual Basic 5.0 bugs that were fixed in the Visual Studio 97 Service Pack 2, please see the following article in the Microsoft Knowledge Base: 171554
(http://support.microsoft.com/kb/171554/EN-US/
)
: INFO: Visual Basic 5.0 Fixes in Visual Studio 97 Service Pack 2
MORE INFORMATION
This problem occurs only with the Printer object. The ScaleMode property of
a PictureBox control or a Form can be successfully set to vbUser (0).
Steps to Reproduce Behavior
WorkaroundTo work around this behavior, replace the code in step 3 above with the following code that illustrates how to create a custom scale for the Printer object successfully by using the Printer object's Scale method rather than its ScaleMode property:REFERENCES
"Visual Basic Programmer's Guide", version 5.0, Chapter 12
APPLIES TO
| Article Translations
|

Back to the top
