QStyleOptionFrame Class

The QStyleOptionFrame class is used to describe the parameters for drawing a frame. More...

Header: #include <QStyleOptionFrame>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Inherits: QStyleOption

Public Types

enum FrameFeature { None, Flat, Rounded }
flags FrameFeatures
enum StyleOptionType { Type }
enum StyleOptionVersion { Version }

Public Functions

QStyleOptionFrame()
QStyleOptionFrame(const QStyleOptionFrame &other)

Public Variables

QStyleOptionFrame::FrameFeatures features
QFrame::Shape frameShape
int lineWidth
int midLineWidth

Detailed Description

QStyleOptionFrame is used for drawing several built-in Qt widgets, including QFrame, QGroupBox, QLineEdit, and QMenu.

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.

An instance of the QStyleOptionFrame class has type SO_Frame and version 3.

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. 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.

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

See also QStyleOption.

Member Type Documentation

enum QStyleOptionFrame::FrameFeature
flags QStyleOptionFrame::FrameFeatures

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

ConstantValueDescription
QStyleOptionFrame::None0x00Indicates a normal frame.
QStyleOptionFrame::Flat0x01Indicates a flat frame.
QStyleOptionFrame::Rounded0x02Indicates a rounded frame.

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

enum QStyleOptionFrame::StyleOptionType

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

ConstantValueDescription
QStyleOptionFrame::TypeSO_FrameThe type of style option provided (SO_Frame 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 QStyleOptionFrame::StyleOptionVersion

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

ConstantValueDescription
QStyleOptionFrame::Version13

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

QStyleOptionFrame::QStyleOptionFrame()

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

QStyleOptionFrame::QStyleOptionFrame(const QStyleOptionFrame &other)

Constructs a copy of the other style option.

Member Variable Documentation

QStyleOptionFrame::FrameFeatures QStyleOptionFrame::features

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

See also FrameFeature.

QFrame::Shape QStyleOptionFrame::frameShape

This property holds the frame shape value of the frame.

See also QFrame::frameShape.

int QStyleOptionFrame::lineWidth

This variable holds the line width for drawing the frame

The default value is 0.

See also QFrame::lineWidth.

int QStyleOptionFrame::midLineWidth

This variable holds the mid-line width for drawing the frame

This is usually used in drawing sunken or raised frames.

The default value is 0.

See also QFrame::midLineWidth.

© 2023 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.