RAD Studio VCL Reference
ContentsIndex
PreviousUpNext
TWinControl Class

TWinControl is the base class for all controls that are wrappers for Microsoft Windows screen objects.

Pascal
TWinControl = class(TControl);
C++
class TWinControl : public TControl;

Controls

TWinControl provides the common functionality for all controls that act as wrappers for Microsoft Windows screen objects ("windows"). Controls that are wrap underlying windows have the following features: 

The control can incorporate the functionality of an underlying window. For example, if the underlying screen object is a text editor, the control can incorporate the editor ability to manage and display a text buffer. 

The control can receive user input focus. The focused control can handle keyboard input events. Some controls change their appearance when they have the focus. For example, button controls typically indicate the focus by drawing a rectangle around the caption. 

The control can serve as a container for other controls, referred to as child controls. This relationship is signified by the child's Parent property. Container controls provide important services to their children, including display services for controls that do not implement their own canvases. Examples of container controls include forms, panels, and toolbars. 

Controls based on TWinControl can display standard screen objects provided by Microsoft Windows, or customized screen objects developed by the VCL programmer. 

Descendants of TWinControl include abstract base classes that support most kinds of user interface objects. The most significant descendant is TCustomControl, which provides code to implement a canvas and handle paint messages. Other important abstract descendants include TScrollingWinControl, TButtonControl, TCustomComboBox, TCustomEdit, and TCustomListBox. When defining new control classes, consider these descendants before deriving directly from TWinControl. 

Every TWinControl object has a Handle property which provides the window handle for the underlying Microsoft Windows screen object. Use the Handle property to bypass the VCL API and directly access the underlying window. 

 

TButtonControl 

TCustomComboBox 

TCustomControl 

TCustomEdit 

TCustomListBox 

Accepting Dragged Items 

Changing the Drag Mouse Pointer 

Controlling How Child Controls Are Docked 

Controlling How Child Controls Are Undocked 

Controlling How Child Controls Respond to Drag-and-dock Operations 

Customizing Drag and Drop with a Drag Object 

Implementing Drag and Drop in Controls 

Dropping Items 

Ending a Drag Operation 

Implementing Drag and Dock in Controls 

Making a Control a Dockable Child 

Making a Windowed Control a Docking Site 

Starting a Drag Operation 

Help and Hint Properties

Copyright(C) 2008 CodeGear(TM). All Rights Reserved.
What do you think about this topic? Send feedback!