- Qt 6.9
- Qt Widgets
- C++ Classes
- QStyleOptionComplex
- Qt 6.9.0 Reference Documentation

# QStyleOptionComplex Class

The QStyleOptionComplex class is used to hold parameters that are common to all complex controls. More...

Header: | `#include <QStyleOptionComplex>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS Widgets)` `target_link_libraries(mytarget PRIVATE Qt6::Widgets)`
qmake: | `QT += widgets`
Inherits: | QStyleOption
Inherited By: | QStyleOptionComboBox, QStyleOptionGroupBox, QStyleOptionSizeGrip, QStyleOptionSlider, QStyleOptionSpinBox, QStyleOptionTitleBar, and QStyleOptionToolButton

- List of all members, including inherited members

## Public Types

enum | StyleOptionType { Type }
enum | StyleOptionVersion { Version }

## Public Functions

| QStyleOptionComplex(int version = QStyleOptionComplex::Version, int type = SO_Complex)
| QStyleOptionComplex(const QStyleOptionComplex &other)

## Public Variables

QStyle::SubControls | activeSubControls
QStyle::SubControls | subControls

## Detailed Description

This class is not used on its own. Instead it is used to derive other complex control options, for example QStyleOptionSlider and QStyleOptionSpinBox.

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

See also QStyleOption.

## Member Type Documentation

### enum QStyleOptionComplex::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
--- | --- | ---
`QStyleOptionComplex::Type` | `SO_Complex` | The type of style option provided (SO_Complex 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.

### enum QStyleOptionComplex::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
--- | --- | ---
`QStyleOptionComplex::Version` | `1` | 1

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

See also StyleOptionType.

## Member Function Documentation

### QStyleOptionComplex::QStyleOptionComplex(int version = QStyleOptionComplex::Version, int type = SO_Complex)

Constructs a QStyleOptionComplex of the specified type and version, initializing the member variables to their default values. This constructor is usually called by subclasses.

### QStyleOptionComplex::QStyleOptionComplex(const QStyleOptionComplex &other)

Constructs a copy of the other style option.

## Member Variable Documentation

### QStyle::SubControls QStyleOptionComplex::activeSubControls

This variable holds a bitwise OR of the sub-controls that are active for the complex control.

The default value is QStyle::SC_None.

See also QStyle::SubControl.

### QStyle::SubControls QStyleOptionComplex::subControls

This variable holds a bitwise OR of the sub-controls to be drawn for the complex control.

The default value is QStyle::SC_All.

See also QStyle::SubControl.