Version: 2.9.4
Public Member Functions | Protected Member Functions
wxOwnerDrawnComboBox Class Reference

#include </home/zeitlin/src/wx/github/interface/wx/odcombo.h>

Inheritance diagram for wxOwnerDrawnComboBox:

Detailed Description

wxOwnerDrawnComboBox is a combobox with owner-drawn list items.

In essence, it is a wxComboCtrl with wxVListBox popup and wxControlWithItems interface.

Implementing item drawing and measuring is similar to wxVListBox. Application needs to subclass wxOwnerDrawnComboBox and implement OnDrawItem(), OnMeasureItem() and OnMeasureItemWidth().

Styles

This class supports the following styles:

参照:
wxComboCtrl window styles and Window Styles.

Events emitted by this class

The following event handler macros redirect the events to member function handlers 'func' with prototypes like:

void handlerFuncName(wxCommandEvent& event)

Event macros for events emitted by this class:

参照:
Events emitted by wxComboCtrl.

Library:  wxAdvanced
Category:  Controls

Appearance:
wxMSW appearancewxGTK appearancewxMac appearance
wxMSW appearancewxGTK appearancewxMac appearance
参照:
wxComboCtrl, wxComboBox, wxVListBox, wxCommandEvent

Public Member Functions

 wxOwnerDrawnComboBox ()
 Default constructor.
 wxOwnerDrawnComboBox (wxWindow *parent, wxWindowID id, const wxString &value=wxEmptyString, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, int n=0, const wxString choices[]=NULL, long style=0, const wxValidator &validator=wxDefaultValidator, const wxString &name="comboBox")
 Constructor, creating and showing a owner-drawn combobox.
 wxOwnerDrawnComboBox (wxWindow *parent, wxWindowID id, const wxString &value, const wxPoint &pos, const wxSize &size, const wxArrayString &choices, long style=0, const wxValidator &validator=wxDefaultValidator, const wxString &name="comboBox")
 Constructor, creating and showing a owner-drawn combobox.
virtual ~wxOwnerDrawnComboBox ()
 Destructor, destroying the owner-drawn combobox.
virtual int GetWidestItem ()
 Returns index to the widest item in the list.
virtual int GetWidestItemWidth ()
 Returns width of the widest item in the list.
bool Create (wxWindow *parent, wxWindowID id, const wxString &value=wxEmptyString, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxValidator &validator=wxDefaultValidator, const wxString &name=wxComboBoxNameStr)
 Creates the combobox for two-step construction.
bool Create (wxWindow *parent, wxWindowID id, const wxString &value, const wxPoint &pos, const wxSize &size, int n, const wxString choices[], long style=0, const wxValidator &validator=wxDefaultValidator, const wxString &name=wxComboBoxNameStr)
 Creates the combobox for two-step construction.
bool Create (wxWindow *parent, wxWindowID id, const wxString &value, const wxPoint &pos, const wxSize &size, const wxArrayString &choices, long style=0, const wxValidator &validator=wxDefaultValidator, const wxString &name=wxComboBoxNameStr)
 Creates the combobox for two-step construction.

Protected Member Functions

virtual void OnDrawBackground (wxDC &dc, const wxRect &rect, int item, int flags) const
 This method is used to draw the items background and, maybe, a border around it.
virtual void OnDrawItem (wxDC &dc, const wxRect &rect, int item, int flags) const
 The derived class may implement this function to actually draw the item with the given index on the provided DC.
virtual wxCoord OnMeasureItem (size_t item) const
 The derived class may implement this method to return the height of the specified item (in pixels).
virtual wxCoord OnMeasureItemWidth (size_t item) const
 The derived class may implement this method to return the width of the specified item (in pixels).

List of all members.


Constructor & Destructor Documentation

wxOwnerDrawnComboBox::wxOwnerDrawnComboBox ( )

Default constructor.

wxOwnerDrawnComboBox::wxOwnerDrawnComboBox ( wxWindow parent,
wxWindowID  id,
const wxString value = wxEmptyString,
const wxPoint pos = wxDefaultPosition,
const wxSize size = wxDefaultSize,
int  n = 0,
const wxString  choices[] = NULL,
long  style = 0,
const wxValidator validator = wxDefaultValidator,
const wxString name = "comboBox" 
)

Constructor, creating and showing a owner-drawn combobox.

Parameters:
parentParent window. Must not be NULL.
idWindow identifier. The value wxID_ANY indicates a default value.
valueInitial selection string. An empty string indicates no selection.
posWindow position.
sizeWindow size. If wxDefaultSize is specified then the window is sized appropriately.
nNumber of strings with which to initialise the control.
choicesAn array of strings with which to initialise the control.
styleWindow style. See wxOwnerDrawnComboBox.
validatorWindow validator.
nameWindow name.
参照:
Create(), wxValidator
wxOwnerDrawnComboBox::wxOwnerDrawnComboBox ( wxWindow parent,
wxWindowID  id,
const wxString value,
const wxPoint pos,
const wxSize size,
const wxArrayString choices,
long  style = 0,
const wxValidator validator = wxDefaultValidator,
const wxString name = "comboBox" 
)

Constructor, creating and showing a owner-drawn combobox.

Parameters:
parentParent window. Must not be NULL.
idWindow identifier. The value wxID_ANY indicates a default value.
valueInitial selection string. An empty string indicates no selection.
posWindow position.
sizeWindow size. If wxDefaultSize is specified then the window is sized appropriately.
choicesAn array of strings with which to initialise the control.
styleWindow style. See wxOwnerDrawnComboBox.
validatorWindow validator.
nameWindow name.
参照:
Create(), wxValidator
virtual wxOwnerDrawnComboBox::~wxOwnerDrawnComboBox ( ) [virtual]

Destructor, destroying the owner-drawn combobox.


Member Function Documentation

bool wxOwnerDrawnComboBox::Create ( wxWindow parent,
wxWindowID  id,
const wxString value = wxEmptyString,
const wxPoint pos = wxDefaultPosition,
const wxSize size = wxDefaultSize,
long  style = 0,
const wxValidator validator = wxDefaultValidator,
const wxString name = wxComboBoxNameStr 
)

Creates the combobox for two-step construction.

See wxOwnerDrawnComboBox() for further details.

注意:
Derived classes should call or replace this function.

Reimplemented from wxComboCtrl.

bool wxOwnerDrawnComboBox::Create ( wxWindow parent,
wxWindowID  id,
const wxString value,
const wxPoint pos,
const wxSize size,
int  n,
const wxString  choices[],
long  style = 0,
const wxValidator validator = wxDefaultValidator,
const wxString name = wxComboBoxNameStr 
)

Creates the combobox for two-step construction.

See wxOwnerDrawnComboBox() for further details.

注意:
Derived classes should call or replace this function.
bool wxOwnerDrawnComboBox::Create ( wxWindow parent,
wxWindowID  id,
const wxString value,
const wxPoint pos,
const wxSize size,
const wxArrayString choices,
long  style = 0,
const wxValidator validator = wxDefaultValidator,
const wxString name = wxComboBoxNameStr 
)

Creates the combobox for two-step construction.

See wxOwnerDrawnComboBox() for further details.

注意:
Derived classes should call or replace this function.
virtual int wxOwnerDrawnComboBox::GetWidestItem ( ) [virtual]

Returns index to the widest item in the list.

virtual int wxOwnerDrawnComboBox::GetWidestItemWidth ( ) [virtual]

Returns width of the widest item in the list.

virtual void wxOwnerDrawnComboBox::OnDrawBackground ( wxDC dc,
const wxRect rect,
int  item,
int  flags 
) const [protected, virtual]

This method is used to draw the items background and, maybe, a border around it.

The base class version implements a reasonable default behaviour which consists in drawing the selected item with the standard background colour and drawing a border around the item if it is either selected or current.

注意:
flags has the same meaning as with OnDrawItem().
virtual void wxOwnerDrawnComboBox::OnDrawItem ( wxDC dc,
const wxRect rect,
int  item,
int  flags 
) const [protected, virtual]

The derived class may implement this function to actually draw the item with the given index on the provided DC.

If function is not implemented, the item text is simply drawn, as if the control was a normal combobox.

Parameters:
dcThe device context to use for drawing
rectThe bounding rectangle for the item being drawn (DC clipping region is set to this rectangle before calling this function)
itemThe index of the item to be drawn
flagsA combination of the wxOwnerDrawnComboBoxPaintingFlags enumeration values.
virtual wxCoord wxOwnerDrawnComboBox::OnMeasureItem ( size_t  item) const [protected, virtual]

The derived class may implement this method to return the height of the specified item (in pixels).

The default implementation returns text height, as if this control was a normal combobox.

virtual wxCoord wxOwnerDrawnComboBox::OnMeasureItemWidth ( size_t  item) const [protected, virtual]

The derived class may implement this method to return the width of the specified item (in pixels).

If -1 is returned, then the item text width is used.

The default implementation returns -1.

 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines