Creating a Property Sheet Handler
In this chapter, we will create a
property sheet extension that will allow us to modify every aspect of
a .rad
file: animal type, gender, color, age,
weight, and noise. The property sheet we will create is shown in
Figure 6.3.
Figure 6-3. RAD property sheet
Implementing IShellExtInit
We will continue to use the RadEx
project. But the first thing we need to do is to add the clsDropFiles
class to the project (See Example 6.1). This class
will handle the implementation of IShellExtInit
.
If you look at the class listing, you will see that it contains the
code that was used previously in our implementation of
IShellExtInit
(see Chapter 4).
The code is very generic. In fact, we will reuse the clsDropFiles
class when we discuss drop handlers in Chapter 8.
After
clsDropFiles has been included in the project, we need to add another
class to the project called clsPropSheet. This class will contain
everything necessary to implement a property sheet handler. Once this
has been done, we can implement IShellExtInit
in
the clsPropSheet class module as follows:
'clsPropSheet Option Explicit Implements IShellExtInit Implements IShellPropSheetExt Private m_clsDropFiles As clsDropFiles Private Sub IShellExtInit_Initialize( _ ByVal pidlFolder As VBShellLib.LPCITEMIDLIST, _ ByVal pDataObj As VBShellLib.IDataObject, _ ByVal hKeyProgID As VBShellLib.HKEY) Set m_clsDropFiles ...
Get VB Shell Programming now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.