QStyleHintReturn Class

The QStyleHintReturn class provides style hints that return more than basic data types. 更多...

头文件: #include <QStyleHintReturn>
qmake: QT += widgets
派生类:

QStyleHintReturnMask and QStyleHintReturnVariant

公有类型

enum HintReturnType { SH_Default, SH_Mask, SH_Variant }
enum StyleOptionType { Type }
enum StyleOptionVersion { Version }

公有函数

QStyleHintReturn(int version = QStyleOption::Version, int type = SH_Default)

公有变量

int type
int version
T qstyleoption_cast(const QStyleHintReturn *hint)
T qstyleoption_cast(QStyleHintReturn *hint)

详细描述

The QStyleHintReturn class provides style hints that return more than basic data types.

QStyleHintReturn and its subclasses are used to pass information from a style back to the querying widget. This is most useful when the return value from QStyle::styleHint() does not provide enough detail; for example, when a mask is to be returned.

成员类型

enum QStyleHintReturn::HintReturnType

ConstantValueDescription
QStyleHintReturn::SH_Default0xf000QStyleHintReturn
QStyleHintReturn::SH_Mask?QStyle::SH_RubberBand_Mask QStyle::SH_FocusFrame_Mask
QStyleHintReturn::SH_Variant?QStyle::SH_TextControl_FocusIndicatorTextCharFormat

enum QStyleHintReturn::StyleOptionType

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

ConstantValueDescription
QStyleHintReturn::TypeSH_DefaultThe type of style option provided (SH_Default for this class).

The type is used internally by QStyleHintReturn, 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 QStyleHintReturn subclass and your own styles.

参见 StyleOptionVersion.

enum QStyleHintReturn::StyleOptionVersion

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

ConstantValueDescription
QStyleHintReturn::Version11

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

参见 StyleOptionType.

成员函数

QStyleHintReturn::QStyleHintReturn(int version = QStyleOption::Version, int type = SH_Default)

Constructs a QStyleHintReturn with version version and type type.

The version has no special meaning for QStyleHintReturn; it can be used by subclasses to distinguish between different version of the same hint type.

参见 QStyleOption::version and QStyleOption::type.

成员变量

int QStyleHintReturn::type

This variable holds the type of the style hint container

参见 HintReturnType.

int QStyleHintReturn::version

This variable holds the version of the style hint return container

This value can be used by subclasses to implement extensions without breaking compatibility. If you use qstyleoption_cast<T>(), you normally do not need to check it.

相关非成员

T qstyleoption_cast(const QStyleHintReturn *hint)

Returns a T or 0 depending on the type and version of hint.

Example:


  int MyStyle::styleHint(StyleHint stylehint, const QStyleOption *opt,
                         const QWidget *widget, QStyleHintReturn* returnData) const;
  {
      if (stylehint == SH_RubberBand_Mask) {
          const QStyleHintReturnMask *maskReturn =
                  qstyleoption_cast<const QStyleHintReturnMask *>(hint);
          if (maskReturn) {
              ...
          }
      }
      ...
  }

参见 QStyleHintReturn::type and QStyleHintReturn::version.

T qstyleoption_cast(QStyleHintReturn *hint)

This is an overloaded function.

Returns a T or 0 depending on the type of hint.