|  | Home · All Classes · Modules

# QStyleOptionButton Class Reference
[QtGui module]

The QStyleOptionButton class is used to describe the parameters for drawing buttons. More...

Inherits QStyleOption.

### Types

- enum ButtonFeature { None, Flat, HasMenu, DefaultButton, AutoDefaultButton, CommandLinkButton }
- class ButtonFeatures
- enum StyleOptionType { Type }
- enum StyleOptionVersion { Version }

### Methods

- __init__ (self)
- __init__ (self, QStyleOptionButton other)

### Members

- ButtonFeatures features
- QIcon icon
- QSize iconSize
- QString text

## Detailed Description

The QStyleOptionButton class is used to describe the parameters for drawing buttons.

QStyleOptionButton contains all the information that QStyle functions need to draw graphical elements like QPushButton, QCheckBox, and QRadioButton.

For performance reasons, the access to the member variables is direct (i.e., using the `.` or `->` operator). This low-level feel makes the structures straightforward to use and emphasizes that these are simply parameters used by the style functions.

For an example demonstrating how style options can be used, see the Styles example.

See also QStyleOption and QStyleOptionToolButton.

## Type Documentation

### QStyleOptionButton.ButtonFeature

This enum describes the different types of features a push button can have.

Constant | Value | Description
--- | --- | ---
`QStyleOptionButton.None` | `0x00` | Indicates a normal push button.
`QStyleOptionButton.Flat` | `0x01` | Indicates a flat push button.
`QStyleOptionButton.HasMenu` | `0x02` | Indicates that the button has a drop down menu.
`QStyleOptionButton.DefaultButton` | `0x04` | Indicates that the button is a default button.
`QStyleOptionButton.AutoDefaultButton` | `0x08` | Indicates that the button is an auto default button.
`QStyleOptionButton.CommandLinkButton` | `0x10` | Indicates that the button is a Windows Vista type command link.

The ButtonFeatures type is a typedef for QFlags<ButtonFeature>. It stores an OR combination of ButtonFeature values.

See also features.

### QStyleOptionButton.StyleOptionType

This enum is used to hold information about the type of the style option, and is defined for each QStyleOption subclass.

Constant | Value | Description
--- | --- | ---
`QStyleOptionButton.Type` | `SO_Button` | The type of style option provided (SO_Button for this class).

The type is used internally by QStyleOption, its subclasses, and qstyleoption_cast() to determine the type of style option. In general you do not need to worry about this unless you want to create your own QStyleOption subclass and your own styles.

See also StyleOptionVersion.

### QStyleOptionButton.StyleOptionVersion

This enum is used to hold information about the version of the style option, and is defined for each QStyleOption subclass.

Constant | Value | Description
--- | --- | ---
`QStyleOptionButton.Version` | `1` | 1

The version is used by QStyleOption subclasses to implement extensions without breaking compatibility. If you use qstyleoption_cast(), you normally don't need to check it.

See also StyleOptionType.

## Method Documentation

### QStyleOptionButton.__init__ (self)

Constructs a QStyleOptionButton, initializing the members variables to their default values.

### QStyleOptionButton.__init__ (self, QStyleOptionButton other)

Constructs a copy of the other style option.

## Member Documentation

### ButtonFeatures features

This variable holds a bitwise OR of the features that describe this button.

See also ButtonFeature.

### QIcon icon

This variable holds the icon of the button.

The default value is an empty icon, i.e. an icon with neither a pixmap nor a filename.

See also iconSize.

### QSize iconSize

This variable holds the size of the icon for the button.

The default value is QSize(-1, -1), i.e. an invalid size.

### QString text

This variable holds the text of the button.

The default value is an empty string.