phoenix_title wx.adv.BitmapComboBox

A combobox that displays bitmap in front of the list items.

It currently only allows using bitmaps of one size, and resizes itself so that a bitmap can be shown next to the text field.

styles Window Styles

This class supports the following styles:

  • wx.CB_READONLY: Creates a combobox without a text editor. On some platforms the control may appear very different when this style is used.

  • wx.CB_SORT: Sorts the entries in the list alphabetically.

  • wx.TE_PROCESS_ENTER: The control will generate the event wxEVT_TEXT_ENTER (otherwise pressing Enter key is either processed internally by the control or used for navigation between dialog controls). Windows only.

events Events Emitted by this Class

Handlers bound for the following event types will receive a wx.CommandEvent parameter.

  • EVT_COMBOBOX: Process a wxEVT_COMBOBOX event, when an item on the list is selected.

  • EVT_TEXT: Process a wxEVT_TEXT event, when the combobox text changes.

  • EVT_TEXT_ENTER: Process a wxEVT_TEXT_ENTER event, when RETURN is pressed in the combobox.

Note

While wx.adv.BitmapComboBox contains the wx.ComboBox API, but it might not actually be derived from that class. In fact, if the platform does not have a native implementation, wx.adv.BitmapComboBox will inherit from wx.adv.OwnerDrawnComboBox. You can determine if the implementation is generic by checking whether GENERIC_BITMAPCOMBOBOX is defined. Currently wx.adv.BitmapComboBox is implemented natively for MSW and GTK+.

Todo

create CB_PROCESS_ENTER rather than reusing wx.TE_PROCESS_ENTER!


class_hierarchy Class Hierarchy

Inheritance diagram for class BitmapComboBox:

appearance Control Appearance


wxMSW

wxMSW

wxMAC

wxMAC

wxGTK

wxGTK


method_summary Methods Summary

__init__

Default constructor.

Append

Adds the item to the end of the combo box.

Create

Creates the combobox for two-step construction.

Dismiss

Hides the list box portion of the combo box.

FindString

Finds an item whose label matches the given string.

GetBitmapSize

Returns the size of the bitmaps used in the combo box.

GetClassDefaultAttributes

GetCount

Returns the number of items in the control.

GetInsertionPoint

Same as wx.TextEntry.GetInsertionPoint .

GetItemBitmap

Returns the bitmap of the item with the given index.

GetSelection

Returns the index of the selected item or NOT_FOUND if no item is selected.

GetTextSelection

Gets the current selection span.

GetString

Returns the label of the item with the given index.

Insert

Inserts the item into the list before pos.

IsListEmpty

Returns True if the list of combobox choices is empty.

IsTextEmpty

Returns True if the text of the combobox is empty.

Popup

Shows the list box portion of the combo box.

SetItemBitmap

Sets the bitmap for the given item.

SetSelection

Same as wx.TextEntry.SetSelection .

SetString

Changes the text of the specified combobox item.

SetTextSelection

Same as wx.TextEntry.SetSelection .

SetValue

Sets the text for the combobox text field.


api Class API

class wx.adv.BitmapComboBox(Control, TextEntry, ItemContainer)

Possible constructors:

BitmapComboBox()

BitmapComboBox(parent, id=ID_ANY, value="", pos=DefaultPosition,
               size=DefaultSize, choices=[], style=0, validator=DefaultValidator,
               name=BitmapComboBoxNameStr)

A combobox that displays bitmap in front of the list items.


Methods

__init__(self, *args, **kw)

overload Overloaded Implementations:



__init__ (self)

Default constructor.



__init__ (self, parent, id=ID_ANY, value=””, pos=DefaultPosition, size=DefaultSize, choices=[], style=0, validator=DefaultValidator, name=BitmapComboBoxNameStr)

Constructor, creating and showing a combobox.

Parameters
  • parent (wx.Window) – Parent window. Must not be None.

  • id (wx.WindowID) – Window identifier. The value wx.ID_ANY indicates a default value.

  • value (string) – Initial selection string. An empty string indicates no selection.

  • pos (wx.Point) – Initial position.

  • size (wx.Size) – Initial size.

  • choices (list of strings) – An list of strings with which to initialise the control.

  • style (long) – The window style, see CB_ flags.

  • validator (wx.Validator) – Validator which can be used for additional data checks.

  • name (string) – Control name.

See also

Create , wx.Validator





Append(self, *args, **kw)

overload Overloaded Implementations:



Append (self, item, bitmap=NullBitmap)

Adds the item to the end of the combo box.

Parameters
Return type

int



Append (self, item, bitmap, clientData)

Adds the item to the end of the combo box, associating the given typed client data pointer clientData with the item.

Parameters
  • item (string) –

  • bitmap (wx.Bitmap) –

  • clientData (ClientData) –

Return type

int





Create(self, parent, id=ID_ANY, value="", pos=DefaultPosition, size=DefaultSize, choices=[], style=0, validator=DefaultValidator, name=BitmapComboBoxNameStr)

Creates the combobox for two-step construction.

Parameters
  • parent (wx.Window) –

  • id (wx.WindowID) –

  • value (string) –

  • pos (wx.Point) –

  • size (wx.Size) –

  • choices (list of strings) –

  • style (long) –

  • validator (wx.Validator) –

  • name (string) –

Return type

bool



Dismiss(self)

Hides the list box portion of the combo box.

Currently this method is implemented in wxMSW, wxGTK and OSX/Cocoa.

Notice that calling this function will generate a wxEVT_COMBOBOX_CLOSEUP event except under wxOSX where generation of this event is not supported at all.

New in version 2.9.1.



FindString(self, string, caseSensitive=False)

Finds an item whose label matches the given string.

Parameters
  • string (string) – String to find.

  • caseSensitive (bool) – Whether search is case sensitive (default is not).

Return type

int

Returns

The zero-based position of the item, or wx.NOT_FOUND if the string was not found.



GetBitmapSize(self)

Returns the size of the bitmaps used in the combo box.

If the combo box is empty, then wx.DefaultSize is returned.

Return type

Size



static GetClassDefaultAttributes(variant=WINDOW_VARIANT_NORMAL)
Parameters

variant (WindowVariant) –

Return type

VisualAttributes



GetCount(self)

Returns the number of items in the control.

Return type

int

See also

IsEmpty



GetInsertionPoint(self)

Same as wx.TextEntry.GetInsertionPoint .

Return type

long

Note

Under wxMSW, this function always returns 0 if the combobox doesn’t have the focus.



GetItemBitmap(self, n)

Returns the bitmap of the item with the given index.

Parameters

n (int) –

Return type

Bitmap



GetSelection(self)

Returns the index of the selected item or NOT_FOUND if no item is selected.

Return type

int

Returns

The position of the current selection.

Note

This method can be used with single selection list boxes only, you should use wx.ListBox.GetSelections for the list boxes with wx.LB_MULTIPLE style.



GetTextSelection(self)

Gets the current selection span.

If the returned values are equal, there was no selection. Please note that the indices returned may be used with the other wx.TextCtrl methods but don’t necessarily represent the correct indices into the string returned by GetValue for multiline controls under Windows (at least,) you should use GetStringSelection to get the selected text.

Return type

tuple



GetString(self, n)

Returns the label of the item with the given index.

Parameters

n (int) – The zero-based index.

Return type

string

Returns

The label of the item or an empty string if the position was invalid.



Insert(self, *args, **kw)

overload Overloaded Implementations:



Insert (self, item, bitmap, pos)

Inserts the item into the list before pos.

Not valid for CB_SORT style, use Append instead.

Parameters
  • item (string) –

  • bitmap (wx.Bitmap) –

  • pos (int) –

Return type

int



Insert (self, item, bitmap, pos, clientData)

Inserts the item into the list before pos, associating the given typed client data pointer with the item.

Not valid for CB_SORT style, use Append instead.

Parameters
  • item (string) –

  • bitmap (wx.Bitmap) –

  • pos (int) –

  • clientData (ClientData) –

Return type

int





IsListEmpty(self)

Returns True if the list of combobox choices is empty.

Use this method instead of (not available in this class) IsEmpty to test if the list of items is empty.

Return type

bool

New in version 2.9.3.



IsTextEmpty(self)

Returns True if the text of the combobox is empty.

Use this method instead of (not available in this class) IsEmpty to test if the text currently entered into the combobox is empty.

Return type

bool

New in version 2.9.3.



Popup(self)

Shows the list box portion of the combo box.

Currently this method is implemented in wxMSW, wxGTK and OSX/Cocoa.

Notice that calling this function will generate a wxEVT_COMBOBOX_DROPDOWN event except under wxOSX where generation of this event is not supported at all.

New in version 2.9.1.



SetItemBitmap(self, n, bitmap)

Sets the bitmap for the given item.

Parameters


SetSelection(self, *args, **kw)

overload Overloaded Implementations:



SetSelection (self, from_, to_)

Same as wx.TextEntry.SetSelection .

Parameters
  • from_ (long) –

  • to_ (long) –



SetSelection (self, n)

Sets the selection to the given item n or removes the selection entirely if n == NOT_FOUND .

Note that this does not cause any command events to be emitted nor does it deselect any other items in the controls which support multiple selections.

Parameters

n (int) – The string position to select, starting from zero.

See also

SetString , SetStringSelection





SetString(self, n, text)

Changes the text of the specified combobox item.

Notice that if the item is the currently selected one, i.e. if its text is displayed in the text part of the combobox, then the text is also replaced with the new text.

Parameters
  • n (int) –

  • text (string) –



SetTextSelection(self, from_, to_)

Same as wx.TextEntry.SetSelection .

Parameters
  • from_ (long) –

  • to_ (long) –



SetValue(self, text)

Sets the text for the combobox text field.

For normal, editable comboboxes with a text entry field calling this method will generate a wxEVT_TEXT event, consistently with wx.TextEntry.SetValue behaviour, use wx.TextEntry.ChangeValue if this is undesirable.

For controls with CB_READONLY style the method behaves somewhat differently: the string must be in the combobox choices list (the check for this is case-insensitive) and wxEVT_TEXT is not generated in this case.

Parameters

text (string) – The text to set.


Properties

BitmapSize

See GetBitmapSize



Count

See GetCount



InsertionPoint

See GetInsertionPoint



Selection

See GetSelection and SetSelection