SftTree/DLL 7.5 - Tree Control
SftBox/OCX 5.0 - Combo Box Control
SftButton/OCX 3.0 - Button Control
SftMask/OCX 7.0 - Masked Edit Control
SftTabs/OCX 6.5 - Tab Control (VB6 only)
SftTree/OCX 7.5 - Tree Control
SftPrintPreview/DLL 2.0 - Print Preview Control (discontinued)
SftTree/DLL 7.5 - Tree Control
SftBox/OCX 5.0 - Combo Box Control
SftButton/OCX 3.0 - Button Control
SftDirectory 3.5 - File/Folder Control (discontinued)
SftMask/OCX 7.0 - Masked Edit Control
SftOptions 1.0 - Registry/INI Control (discontinued)
SftPrintPreview/OCX 1.0 - Print Preview Control (discontinued)
SftTabs/OCX 6.5 - Tab Control (VB6 only)
SftTree/OCX 7.5 - Tree Control
SftTabs/NET 6.0 - Tab Control (discontinued)
SftTree/NET 2.0 - Tree Control
SftButton supports three independent image layers, each with its own per-state pictures. Every picture field is an SFT_PICTURE structure that can reference a bitmap, icon, image list entry, check-box / radio-button style, or (when GDI+ is available) a PNG / TIFF / JPEG / GIF / EMF image.
| Layer | Per-state fields | Drawn |
|---|---|---|
| Background pictures | PictureBG, PictureBGHover, PictureBGPressed, PictureBGDisabled | Over the background fill, under the foreground layers |
| Foreground image 1 | Picture1, Picture1Hover, Picture1Pressed, Picture1Disabled | Over the background pictures |
| Foreground image 2 | Picture2, Picture2Hover, Picture2Pressed, Picture2Disabled | Over foreground image 1 |
Hover, Pressed and Disabled variants are optional. If a per-state field is left empty, the control falls back to the base variant. A button that only defines Picture1 renders the same image in every state.
Bitmaps are automatically made transparent by inspecting the top-left pixel - see Bitmap Transparency. Icons, image list entries and GDI+ images preserve their native transparency. Alpha-blended GDI+ images (PNG with transparency, TIFF, EMF+) render correctly over gradients and background pictures.
By default, images are scaled by currentDPI / 96 so a single set of 96-DPI bitmaps renders at the right physical size on any monitor. Applications that ship pre-scaled images and want them drawn at their native pixel size can call SetImageScaling with SFTBUTTON_IMAGESCALING_ASIS. See Per-Monitor DPI and Scaling.
