SAMPLE: VB6WLCTL.EXE Windowless Controls Demonstration (189596)
The information in this article applies to:
- Microsoft Visual Basic Learning Edition for Windows 6.0
- Microsoft Visual Basic Professional Edition for Windows 6.0
- Microsoft Visual Basic Enterprise Edition for Windows 6.0
This article was previously published under Q189596 SUMMARY Visual Basic 6.0 introduces the capability of creating
"Windowless" controls. A Windowless control, also known as a "lightweight"
control, is a control that does not have a WndProc function for message
handling. These lightweight controls require fewer resources than normal
controls, and allow for development of transparent controls. This sample
demonstrates how to create windowless controls in Visual Basic 6.0.
MORE INFORMATIONThe
following file is available for download from the Microsoft Download
Center: Release Date: June 16,
2000 For additional information about how to download Microsoft
Support files, click the following article number to view the article in the
Microsoft Knowledge Base: 119591 How to Obtain Microsoft Support Files from Online Services
Microsoft scanned this file for viruses. Microsoft used the most
current virus-detection software that was available on the date that the file
was posted. The file is stored on security-enhanced servers that help to
prevent any unauthorized changes to the file.
Below is the content of the Readme.txt for this sample. Description Visual Basic 6.0 provides the capability of building Windowless
controls, also known as lightweight controls. A new property of the
UserControl, Windowless, enables this feature. Setting the Windowless property
to True will make the UserControl Windowless, a control which sends and
receives messages through OLE rather than the regular messaging queues that
Windows uses. A Windowless control behaves the same as the normal
UserControls with the following exceptions: - The UserControl has no hWnd property (limits some API
calls).
- The Borderstyle property cannot be set.
- The UserControl cannot host normal Windowed controls.
- Windowless controls are not supported by some containers.
If sited in such a container, they will be assigned an hWnd and be treated as a
normal Windowed controls.
This sample demonstrates the functionalities of Windowless
controls created in Visual Basic 6.0. The main project group file is
WndLessControlAGroup.vbg, which contains the controls as well as a client that
shows the controls in action. The documentation in the source code explains in
great detail the behavior of each control. Summary Of Sample Controls Four Windowless Controls are included in the sample to show
different Functionality:
TestControl1 - A Windowless control that acts and handles events like a
normal control.
TestControl2 - Allows events to bypass it and be handled by the controls
underneath it.
TestControl3 - Demonstrates "HitTesting" to see where the user has clicked
within the Windowless control's region on the form. The
control acts "transparently" (events being passed to the
Form underneath) unless the CommandButton sited on it is
clicked. Then it handles that Event normally.
TestControl4 - This control demonstrates how to determine what areas of a
control are transparent by using the Picture, MaskPicture,
and MaskColor properties, and where events can be handled.
To Start Before loading this sample into Visual Basic 6.0, the following
steps need to be taken:
- Copy the following files on the Visual Basic 6.0 or Visual
Studio 6.0 installation CD-ROM in the ...\Common\Tools\VB\WINLESS folder to the
Windows\System (Windows 95, Windows 98, or Windows Me) or Windows\System32
(Windows NT) folder:
mswless.reg
mswless.ocx
- Double-click on mswless.reg to import information to the
registry.
- Register mswless.ocx by typing in the following command in
the Windows Run dialog:
RegSvr32 C:\Windows\System\mswless.ocx
REFERENCES For more information about lightweight controls in Visual
Basic, please see the following articles in the Microsoft Knowledge Base: 184687
: INFO: Lightweight Controls in Visual Basic 6.0
184645
: HOWTO: Create Lightweight Controls with Visual Basic 6.0
Modification Type: | Minor | Last Reviewed: | 8/10/2004 |
---|
Keywords: | kbdownload kbCtrl kbfile kbhowto kbreadme kbRegistry kbSample KB189596 kbAudDeveloper |
---|
|