QStyle Class

QStyleクラスは、GUIのルック&フィールをカプセル化する抽象基底クラスです。詳細...

ヘッダー #include <QStyle>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
を継承する: QObject
継承元:

QCommonStyle

パブリックな型

enum ComplexControl { CC_SpinBox, CC_ComboBox, CC_ScrollBar, CC_Slider, CC_ToolButton, …, CC_CustomBase }
enum ContentsType { CT_CheckBox, CT_ComboBox, CT_HeaderSection, CT_LineEdit, CT_Menu, …, CT_MdiControls }
enum ControlElement { CE_PushButton, CE_PushButtonBevel, CE_PushButtonLabel, CE_DockWidgetTitle, CE_Splitter, …, CE_ShapedFrame }
enum PixelMetric { PM_ButtonMargin, PM_DockWidgetTitleBarButtonMargin, PM_ButtonDefaultIndicator, PM_MenuButtonIndicator, PM_ButtonShiftHorizontal, …, PM_CustomBase }
enum PrimitiveElement { PE_PanelButtonCommand, PE_FrameDefaultButton, PE_PanelButtonBevel, PE_PanelButtonTool, PE_PanelLineEdit, …, PE_PanelMenu }
enum RequestSoftwareInputPanel { RSIP_OnMouseClickAndAlreadyFocused, RSIP_OnMouseClick }
enum StandardPixmap { SP_TitleBarMinButton, SP_TitleBarMenuButton, SP_TitleBarMaxButton, SP_TitleBarCloseButton, SP_TitleBarNormalButton, …, SP_CustomBase }
flags State
enum StateFlag { State_None, State_Active, State_AutoRaise, State_Children, State_DownArrow, …, State_Small }
enum StyleHint { SH_EtchDisabledText, SH_DitherDisabledText, SH_ScrollBar_ContextMenu, SH_ScrollBar_MiddleClickAbsolutePosition, SH_ScrollBar_LeftClickAbsolutePosition, …, SH_Table_AlwaysDrawLeftTopGridLines }
enum SubControl { SC_None, SC_ScrollBarAddLine, SC_ScrollBarSubLine, SC_ScrollBarAddPage, SC_ScrollBarSubPage, …, SC_All }
flags SubControls
enum SubElement { SE_PushButtonContents, SE_PushButtonFocusRect, SE_PushButtonLayoutItem, SE_PushButtonBevel, SE_CheckBoxIndicator, …, SE_ToolBarHandle }

パブリック関数

QStyle()
virtual ~QStyle()
int combinedLayoutSpacing(QSizePolicy::ControlTypes controls1, QSizePolicy::ControlTypes controls2, Qt::Orientation orientation, QStyleOption *option = nullptr, QWidget *widget = nullptr) const
virtual void drawComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget = nullptr) const = 0
virtual void drawControl(QStyle::ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget = nullptr) const = 0
virtual void drawItemPixmap(QPainter *painter, const QRect &rectangle, int alignment, const QPixmap &pixmap) const
virtual void drawItemText(QPainter *painter, const QRect &rectangle, int alignment, const QPalette &palette, bool enabled, const QString &text, QPalette::ColorRole textRole = QPalette::NoRole) const
virtual void drawPrimitive(QStyle::PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget = nullptr) const = 0
virtual QPixmap generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap, const QStyleOption *option) const = 0
virtual QStyle::SubControl hitTestComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, const QPoint &position, const QWidget *widget = nullptr) const = 0
virtual QRect itemPixmapRect(const QRect &rectangle, int alignment, const QPixmap &pixmap) const
virtual QRect itemTextRect(const QFontMetrics &metrics, const QRect &rectangle, int alignment, bool enabled, const QString &text) const
virtual int layoutSpacing(QSizePolicy::ControlType control1, QSizePolicy::ControlType control2, Qt::Orientation orientation, const QStyleOption *option = nullptr, const QWidget *widget = nullptr) const = 0
(since 6.1) QString name() const
virtual int pixelMetric(QStyle::PixelMetric metric, const QStyleOption *option = nullptr, const QWidget *widget = nullptr) const = 0
virtual void polish(QWidget *widget)
virtual void polish(QApplication *application)
virtual void polish(QPalette &palette)
const QStyle *proxy() const
virtual QSize sizeFromContents(QStyle::ContentsType type, const QStyleOption *option, const QSize &contentsSize, const QWidget *widget = nullptr) const = 0
virtual QIcon standardIcon(QStyle::StandardPixmap standardIcon, const QStyleOption *option = nullptr, const QWidget *widget = nullptr) const = 0
virtual QPalette standardPalette() const
virtual int styleHint(QStyle::StyleHint hint, const QStyleOption *option = nullptr, const QWidget *widget = nullptr, QStyleHintReturn *returnData = nullptr) const = 0
virtual QRect subControlRect(QStyle::ComplexControl control, const QStyleOptionComplex *option, QStyle::SubControl subControl, const QWidget *widget = nullptr) const = 0
virtual QRect subElementRect(QStyle::SubElement element, const QStyleOption *option, const QWidget *widget = nullptr) const = 0
virtual void unpolish(QWidget *widget)
virtual void unpolish(QApplication *application)

静的パブリックメンバ

QRect alignedRect(Qt::LayoutDirection direction, Qt::Alignment alignment, const QSize &size, const QRect &rectangle)
int sliderPositionFromValue(int min, int max, int logicalValue, int span, bool upsideDown = false)
int sliderValueFromPosition(int min, int max, int position, int span, bool upsideDown = false)
Qt::Alignment visualAlignment(Qt::LayoutDirection direction, Qt::Alignment alignment)
QPoint visualPos(Qt::LayoutDirection direction, const QRect &boundingRectangle, const QPoint &logicalPosition)
QRect visualRect(Qt::LayoutDirection direction, const QRect &boundingRectangle, const QRect &logicalRectangle)

詳細な説明

Qt には QStyle サブクラスのセットがあり、Qt がサポートするさまざまなプラットフォームのスタイル(QWindowsStyle、QMacStyle など)をエミュレートします。デフォルトでは、これらのスタイルはQt GUI モジュールに組み込まれています。スタイルはプラグインとして利用することもできます。

Qtの組み込みウィジェットは、QStyleを使用してほぼすべての描画を行い、同等のネイティブ・ウィジェットとまったく同じように見えるようにしています。下図は、QComboBox を 9 種類のスタイルで表示したものです。

Nine combo boxes

トピック

スタイルの設定

アプリケーション全体のスタイルは、QApplication::setStyle ()関数を使用して設定できます。また、-style コマンドラインオプションを使用して、アプリケーションのユーザーが指定することもできます:

./myapplication -style windows

スタイルが指定されていない場合、Qt はユーザーのプラットフォームやデスクトップ環境に最も適したスタイルを選択します。

また、QWidget::setStyle() 関数を使用して、個々のウィジェットにスタイルを設定することもできます。

スタイルを意識したカスタムウィジェットの開発

カスタムウィジェットを開発していて、すべてのプラットフォームで見栄えが良くなるようにしたい場合は、drawItemText()、drawItemPixmap()、drawPrimitive()、drawControl()、drawComplexControl() などのように、QStyle 関数を使ってウィジェットの描画の一部を実行することができます。

ほとんどのQStyle draw関数は4つの引数を取ります:

  • 描画するグラフィカル要素を指定する列挙値
  • その要素をどこでどのように描画するかを指定するQStyleOption
  • 要素の描画に使用するQPainter
  • 描画が実行されるQWidget (オプション)

例えば、ウィジェットにフォーカスの矩形を描画したい場合は、次のように記述します:

void MyWidget::paintEvent(QPaintEvent * /* event */)
{
    QPainter painter(this);

    QStyleOptionFocusRect option;
    option.initFrom(this);
    option.backgroundColor = palette().color(QPalette::Background);

    style()->drawPrimitive(QStyle::PE_FrameFocusRect, &option, &painter, this);
}

QStyle は、QStyleOption からグラフィカル要素の描画に必要なすべての情報を取得します。ウィジェットは、スタイルが特殊効果(macOS のデフォルト・ボタンのアニメーションなど)を実行するために必要な場合に最後の引数として渡されますが、必須ではありません。実際には、QPainter を適切に設定することで、QStyle を使用して、ウィジェットに限らず、あらゆるペイントデバイスに描画することができます。

QStyleOption QStyleには、描画できるさまざまな種類のグラフィカル要素に対応するさまざまなサブクラスがあります。例えば、 は の引数を期待します。PE_FrameFocusRect QStyleOptionFocusRect

描画操作を可能な限り高速に行うために、QStyleOption とそのサブクラスにはパブリック・データ・メンバがあります。使い方の詳細はQStyleOption クラスのドキュメントを参照してください。

便利なように、Qt は QStyle、QPainterQWidget を組み合わせたQStylePainter クラスを提供しています。

    QStylePainter painter(this);
    ...
    painter.drawPrimitive(QStyle::PE_FrameFocusRect, option);

の代わりに

    QPainter painter(this);
    ...
    style()->drawPrimitive(QStyle::PE_FrameFocusRect, &option, &painter, this);

カスタムスタイルの作成

カスタム・スタイルを作成することで、アプリケーションのルック&フィールをカスタマイズすることができます。カスタム・スタイルの作成には2つのアプローチがあります。静的アプローチでは、既存の QStyle クラスを選択してサブクラス化し、カスタム動作を提供する仮想関数を再実装するか、QStyle クラス全体をゼロから作成します。動的アプローチでは、実行時にシステム・スタイルの動作を変更します。静的アプローチについては後述します。動的アプローチについては、QProxyStyle で説明します。

静的アプローチの最初のステップは、Qtが提供するスタイルの中から1つを選び、そこからカスタムスタイルを構築することです。QStyle クラスの選択は、どのスタイルが希望のスタイルに最も似ているかによって決まります。ベースとして使用できる最も一般的なクラスは、QCommonStyle (QStyleではない)です。これはQtがスタイルをQCommonStyle

ベース・スタイルのどの部分を変更したいかによって、インターフェイスのそれらの部分を描画するために使用される関数を再実装する必要があります。これを説明するために、QWindowsStyleによって描画されるスピン・ボックスの矢印の外観を変更します。矢印はdrawPrimitive() 関数で描画されるプリミティブ要素なので、この関数を再実装する必要があります。以下のクラス宣言が必要です:

class CustomStyle : public QProxyStyle
{
    Q_OBJECT

public:
    CustomStyle(const QWidget *widget);
    ~CustomStyle() {}

    void drawPrimitive(PrimitiveElement element, const QStyleOption *option,
                       QPainter *painter, const QWidget *widget) const override;
};

上下の矢印を描画するために、QSpinBoxPE_IndicatorSpinUpPE_IndicatorSpinDown のプリミティブ要素を使用します。ここでは、drawPrimitive ()関数を再実装して、異なる方法で描画します:

void CustomStyle::drawPrimitive(PrimitiveElement element, const QStyleOption *option,
                                QPainter *painter, const QWidget *widget) const
{
    if (element == PE_IndicatorSpinUp || element == PE_IndicatorSpinDown) {
        QPolygon points(3);
        int x = option->rect.x();
        int y = option->rect.y();
        int w = option->rect.width() / 2;
        int h = option->rect.height() / 2;
        x += (option->rect.width() - w) / 2;
        y += (option->rect.height() - h) / 2;

        if (element == PE_IndicatorSpinUp) {
            points[0] = QPoint(x, y + h);
            points[1] = QPoint(x + w, y + h);
            points[2] = QPoint(x + w / 2, y);
        } else { // PE_SpinBoxDown
            points[0] = QPoint(x, y);
            points[1] = QPoint(x + w, y);
            points[2] = QPoint(x + w / 2, y + h);
        }

        if (option->state & State_Enabled) {
            painter->setPen(option->palette.mid().color());
            painter->setBrush(option->palette.buttonText());
        } else {
            painter->setPen(option->palette.buttonText().color());
            painter->setBrush(option->palette.mid());
        }
        painter->drawPolygon(points);
    } else {
        QProxyStyle::drawPrimitive(element, option, painter, widget);
    }
}

QWindowStyle::drawPrimitive()関数に渡す以外は、widget 引数を使用していないことに注意してください。前述したように、何をどのように描画するかという情報はQStyleOption オブジェクトによって指定されるので、ウィジェットに問い合わせる必要はありません。

追加情報を得るためにwidget 引数を使用する必要がある場合は、使用する前にそれが 0 でないことと、正しい型であることに注意してください。例えば

    const QSpinBox *spinBox = qobject_cast<const QSpinBox *>(widget);
    if (spinBox) {
    ...
    }

カスタム・スタイルを実装する場合、列挙値がPE_IndicatorSpinUp またはPE_IndicatorSpinDown と呼ばれているからといって、ウィジェットがQSpinBox であると仮定することはできません。

警告 Qt スタイル・シートは現在、カスタム QStyle サブクラスには対応していません。将来のリリースで対応する予定です。

カスタムスタイルの使用

Qt アプリケーションでカスタムスタイルを使用するには、いくつかの方法があります。最も簡単な方法は、QApplication オブジェクトを作成する前に、QApplication::setStyle() スタティック関数にカスタムスタイルを渡すことです:

#include <QtWidgets>

#include "customstyle.h"

int main(int argc, char *argv[])
{
    QApplication::setStyle(new CustomStyle);
    QApplication app(argc, argv);
    QSpinBox spinBox;
    spinBox.show();
    return app.exec();
}

QApplication::setStyle() はいつでも呼び出すことができますが、コンストラクタの前に呼び出すことで、-style コマンドラインオプションを使用して設定されたユーザーの好みが尊重されるようになります。

カスタムスタイルを他のアプリケーションでも使用できるようにしたい場合があります。Qtプラグイン・システムでは、スタイルをプラグインとして作成することができます。プラグインとして作成されたスタイルは、Qt自身によって実行時に共有オブジェクトとしてロードされます。スタイル・プラグインの作成方法については、Qt Pluginのドキュメントを参照してください。

プラグインをコンパイルし、Qtのplugins/styles ディレクトリに置きます。これで、Qtが自動的に読み込むプラグイン可能なスタイルができました。既存のアプリケーションで新しいスタイルを使用するには、次の引数でアプリケーションを起動するだけです:

./myapplication -style custom

アプリケーションは、実装したカスタム・スタイルのルック&フィールを使用します。

右から左へのデスクトップ

右から左に書かれる言語(アラビア語やヘブライ語など)は、通常、ウィジェットのレイアウト全体もミラーリングされ、画面の左上ではなく右上から光を当てる必要があります。

カスタム スタイルを作成する場合は、非対称の要素を描くときに特に注意して、ミラー レイアウトでも正しく見えるようにする必要があります。スタイルをテストする簡単な方法は、-reverse コマンドラインオプションでアプリケーションを実行するか、main() 関数でQApplication::setLayoutDirection() を呼び出すことです。

スタイルを右から左の環境でうまく機能させる際に注意すべき点をいくつか挙げます:

  • subControlRect() およびsubElementRect() は、スクリーン座標で長方形を返します。
  • QStyleOption::direction は、アイテムの描画方向を示します。
  • スタイルが右から左を意識していない場合、アイテムは左から右のように表示されます。
  • visualRect()、visualPos()、visualAlignment()は、論理的な表現からスクリーン表現に変換する便利な関数です。
  • alignedRect() は、現在の方向に整列された論理的な矩形を返します。

アイテムビューのスタイル

ビュー内のアイテムのペイントは、デリゲートによって実行されます。Qt のデフォルトのデリゲートであるQStyledItemDelegate は、アイテムの外接矩形や、data roles QStyledItemDelegate がサポートする様々な種類のアイテムのサブ要素の計算にも使用されます。どのデータ型とロールがサポートされているかは、QStyledItemDelegate クラスの説明を参照してください。アイテムのデータ・ロールの詳細については、モデル/ビュー・プログラミングを参照してください。

QStyledItemDelegate がアイテムを描画するとき、CE_ItemViewItem を描画し、CT_ItemViewItem でサイズを計算します。また、SE_ItemViewItemText を使用してエディタのサイズを設定することにも注意してください。アイテムビューの描画をカスタマイズするスタイルを実装する場合は、QCommonStyle (およびスタイルが継承する他のサブクラス)の実装を確認する必要があります。こうすることで、他のスタイル要素がどのように描画されるかを知ることができ、異なる方法で描画されるべき要素の描画を再実装することができます。

ここでは、アイテムの背景の描画をカスタマイズする小さな例を示します。

    switch (element) {
        case (PE_PanelItemViewItem): {
            painter->save();

            QPoint topLeft = option->rect.topLeft();
            QPoint bottomRight = option->rect.topRight();
            QLinearGradient backgroundGradient(topLeft, bottomRight);
            backgroundGradient.setColorAt(0.0, QColor(Qt::yellow).lighter(190));
            backgroundGradient.setColorAt(1.0, Qt::white);
            painter->fillRect(option->rect, QBrush(backgroundGradient));

            painter->restore();
        break;
        }
        default:
            QProxyStyle::drawPrimitive(element, option, painter, widget);
    }

プリミティブ要素PE_PanelItemViewItem はアイテムの背景の描画を担当し、QCommonStyle の実装CE_ItemViewItem から呼び出されます。

新しいデータ型やアイテムのデータロールの描画をサポートするには、カスタムデリゲートを作成する必要があります。しかし、デフォルトのデリゲートで実装されているデータ型をサポートするだけなら、カスタム・スタイルにデリゲートを追加する必要はありません。カスタム・デリゲートの詳細については、QStyledItemDelegate クラスの説明を参照してください。

アイテム ビューのヘッダーの描画もスタイルによって行われ、ヘッダー アイテムのサイズや行と列のサイズを制御できます。

QStyleOption,QStylePainter,スタイルとスタイル対応ウィジェット,QStyledItemDelegate,スタイリングも参照してください

メンバー・タイプ・ドキュメント

enum QStyle::ComplexControl

この列挙型は、利用可能な複合コントロールを記述する。複雑なコントロールは、ユーザーがどこをクリックしたか、どのキーが押されたかに応じて異なる振る舞いをします。

定数説明
QStyle::CC_SpinBox0QSpinBox のようなスピンボックス。
QStyle::CC_ComboBox1QComboBox のようなコンボボックス。
QStyle::CC_ScrollBar2QScrollBar のようなスクロールバー。
QStyle::CC_Slider3QSlider のようなスライダー。
QStyle::CC_ToolButton4QToolButton のようなツールボタン .
QStyle::CC_TitleBar5QMdiSubWindow で使われているようなタイトルバー。
QStyle::CC_GroupBox7QGroupBox のようなグループボックス。
QStyle::CC_Dial6QDial のようなダイヤル。
QStyle::CC_MdiControls8最大化されたMDIサブウィンドウのメニューバーの最小化、閉じる、通常のボタン。
QStyle::CC_CustomBase0xf0000000カスタム複合コントロールの基本値。カスタム値はこの値より大きくなければならない。

SubControl およびdrawComplexControl()も参照してください

enum QStyle::ContentsType

この列挙型は、利用可能なコンテンツタイプを記述します。これらは、様々なウィジェットのコンテンツのサイズを計算するために使用されます。

定数説明
QStyle::CT_CheckBox1QCheckBox のようなチェックボックス。
QStyle::CT_ComboBox4QComboBox のようなコンボ・ボックス。
QStyle::CT_HeaderSection19QHeaderのようなヘッダーセクション。
QStyle::CT_LineEdit14QLineEdit のような行編集。
QStyle::CT_Menu10QMenu のようなメニュー。
QStyle::CT_MenuBar9QMenuBar のようなメニューバー。
QStyle::CT_MenuBarItem8QMenuBar のようなメニュー・バー・アイテム。
QStyle::CT_MenuItem7QMenuItem のようなメニュー・アイテム。
QStyle::CT_ProgressBar6QProgressBar のようなプログレス・バー。
QStyle::CT_PushButton0QPushButton のようなプッシュボタン。
QStyle::CT_RadioButton2QRadioButton のようなラジオボタン。
QStyle::CT_SizeGrip16QSizeGrip のようなサイズ・グリップ。
QStyle::CT_Slider12QSlider のようなスライダー。
QStyle::CT_ScrollBar13QScrollBar のようなスクロールバー。
QStyle::CT_SpinBox15QSpinBox のようなスピンボックス。
QStyle::CT_Splitter5QSplitter のようなスプリッター。
QStyle::CT_TabBarTab11QTabBar のようなタブバー上のタブ。
QStyle::CT_TabWidget17QTabWidget のようなタブウィジェット。
QStyle::CT_ToolButton3QToolButton のようなツールボタン。
QStyle::CT_GroupBox20QGroupBox のようなグループボックス。
QStyle::CT_ItemViewItem22アイテムビュー内のアイテム。
QStyle::CT_CustomBase0xf0000000カスタムコンテンツタイプの基本値。カスタム値はこの値より大きくなければなりません。
QStyle::CT_MdiControls21最大化された MDI サブウィンドウのメニューバーの最小化ボタン、通常ボタン、閉じるボタン。

sizeFromContents()も参照してください

enum QStyle::ControlElement

この列挙型は制御要素を表す。コントロール要素は、ウィジェットの一部で、何らかのアクションを実行したり、ユーザーに情報を表示したりします。

定数説明
QStyle::CE_PushButton0QPushButton は、CE_PushButtonBevel, CE_PushButtonLabel,PE_FrameFocusRect を描画します。
QStyle::CE_PushButtonBevel1QPushButton のベベルとデフォルトインジケータ。
QStyle::CE_PushButtonLabel2QPushButton のラベル(テキストまたはピクセルマップ付きアイコン)。
QStyle::CE_DockWidgetTitle30ドックウィンドウのタイトル。
QStyle::CE_Splitter28ス プ リ ッ タ ーハン ド ル。QSplitter も参照。
QStyle::CE_CheckBox3QCheckBoxPE_IndicatorCheckBox 、 CE_CheckBoxLabel 、PE_FrameFocusRect を描画。
QStyle::CE_CheckBoxLabel4QCheckBox の ラ ベル (テ キ ス ト ま たは ピ ク ス マ ッ プ)。
QStyle::CE_RadioButton5QRadioButton は、PE_IndicatorRadioButton 、 CE_RadioButtonLabel およびPE_FrameFocusRect を描画します。
QStyle::CE_RadioButtonLabel6QRadioButton のラベル(テキストまたは pixmap)。
QStyle::CE_TabBarTab7QTabBar 内のタブとラベル。
QStyle::CE_TabBarTabShape8タブバー内のタブ形状。
QStyle::CE_TabBarTabLabel9タブ内のラベル。
QStyle::CE_ProgressBar10QProgressBar は、CE_ProgressBarGroove、CE_ProgressBarContents、CE_ProgressBarLabel を描画する。
QStyle::CE_ProgressBarGroove11QProgressBar の進行状況インジケータが描画される溝。
QStyle::CE_ProgressBarContents12QProgressBar の進捗インジケーター。
QStyle::CE_ProgressBarLabel13QProgressBar のテキスト・ラベル。
QStyle::CE_ToolButtonLabel22ツールボタンのラベル。
QStyle::CE_MenuBarItem20QMenuBar のメニュー項目。
QStyle::CE_MenuBarEmptyArea21QMenuBar の空領域。
QStyle::CE_MenuItem14QMenu のメニュー項目。
QStyle::CE_MenuScroller15スタイルがスクロールをサポートしている場合の、QMenu のスクロール領域。
QStyle::CE_MenuTearoff18QMenu の切り離し部分を表すメニュー項目。
QStyle::CE_MenuEmptyArea19メニュー項目のないメニューの領域。
QStyle::CE_MenuHMargin17メニューの左右の余分なスペース。
QStyle::CE_MenuVMargin16メニューの上下の余分なスペース。
QStyle::CE_ToolBoxTab26QToolBox 内のツールボックスのタブとラベル。
QStyle::CE_SizeGrip27ウィンドウのリサイズハンドル;QSizeGrip も参照。
QStyle::CE_Header23ヘッダー。
QStyle::CE_HeaderSection24ヘッダーセクション。
QStyle::CE_HeaderLabel25ヘッダーのラベル。
QStyle::CE_ScrollBarAddLine31スクロールバーの行数増加インジケータ。(すなわち、スクロールダウン);QScrollBar も参照。
QStyle::CE_ScrollBarSubLine32スクロールバー行減少インジケータ (すなわち、上にスクロールする)。
QStyle::CE_ScrollBarAddPage33スクロールバーのページ増加インジケータ (すなわち、ページダウン)。
QStyle::CE_ScrollBarSubPage34スクロールバーのページ減少インジケータ (すなわち、ページアップ)。
QStyle::CE_ScrollBarSlider35スクロールバーのスライダー。
QStyle::CE_ScrollBarFirst36スクロールバーの最初の行インジケータ(すなわち、ホーム)。
QStyle::CE_ScrollBarLast37スクロールバーの最終行インジケータ(つまり終了)。
QStyle::CE_RubberBand29アイコンビューなどで使用されるラバーバンド。
QStyle::CE_FocusFrame38スタイル制御されるフォーカスフレーム。
QStyle::CE_ItemViewItem45アイテムビュー内のアイテム。
QStyle::CE_CustomBase0xf0000000カスタムコントロール要素の基本値。カスタム値はこの値より大きくなければならない。
QStyle::CE_ComboBoxLabel39編集不可能なラベルQComboBox
QStyle::CE_ToolBar40QToolBar のようなツールバー。
QStyle::CE_ToolBoxTabShape41ツールボックスのタブ形状。
QStyle::CE_ToolBoxTabLabel42ツールボックスのタブラベル。
QStyle::CE_HeaderEmptyArea43ヘッダービューのヘッダセクションのない領域。
QStyle::CE_ShapedFrame46QStyleOptionFrame で指定された形状のフレーム。QFrame を参照。

drawControl()も参照

enum QStyle::PixelMetric

この列挙型は、利用可能なさまざまなピクセル メトリックを記述します。ピクセルメトリックは、単一のピクセル値で表されるスタイル依存のサイズです。

定数説明
QStyle::PM_ButtonMargin0プッシュ・ボタンのラベルとフレームの間の空白の量。
QStyle::PM_DockWidgetTitleBarButtonMargin73ドックウィジェットのタイトルバーボタンラベルとフレームの間の空白の量。
QStyle::PM_ButtonDefaultIndicator1デフォルト・ボタン・インジケータ枠の幅。
QStyle::PM_MenuButtonIndicator2ウィジェットの高さに比例するメニュー・ボタン・インジケータの幅。
QStyle::PM_ButtonShiftHorizontal3ボタンが下にあるときのボタンの水平方向の内容のずれ。
QStyle::PM_ButtonShiftVertical4ボタンが下にあるときのボタンの垂直方向の内容シフト。
QStyle::PM_DefaultFrameWidth5デフォルトのフレーム幅 (通常は2)。
QStyle::PM_SpinBoxFrameWidth6スピンボックスのフレーム幅、デフォルトは PM_DefaultFrameWidth です。
QStyle::PM_ComboBoxFrameWidth7コンボボックスのフレーム幅、デフォルトは PM_DefaultFrameWidth。
QStyle::PM_MdiSubWindowFrameWidth44MDI ウィンドウのフレーム幅。
QStyle::PM_MdiSubWindowMinimizedWidth45最小化された MDI ウィンドウの幅。
QStyle::PM_LayoutLeftMargin75QLayout のデフォルトleft margin
QStyle::PM_LayoutTopMargin76QLayout のデフォルトtop margin
QStyle::PM_LayoutRightMargin77QLayout のデ フ ォ ル トright margin
QStyle::PM_LayoutBottomMargin78QLayout のデフォルトbottom margin
QStyle::PM_LayoutHorizontalSpacing79QLayout のデフォルトhorizontal spacing
QStyle::PM_LayoutVerticalSpacing80デフォルトvertical spacing for aQLayout.
QStyle::PM_MaximumDragDistance8ドラッグ時にマウスとスクロールバーの間で許容される最大距離。指定した距離を超えると、スライダーは元の位置にジャンプして戻ります。
QStyle::PM_ScrollBarExtent9垂直スクロールバーの幅と水平スクロールバーの高さ。
QStyle::PM_ScrollBarSliderMin10垂直スクロールバーのスライダーの高さの最小値と、水平スクロールバーのスライダーの幅の最小値。
QStyle::PM_SliderThickness11スライダーの太さ
QStyle::PM_SliderControlThickness12スライダーハンドルの太さ
QStyle::PM_SliderLength13スライダーの長さ
QStyle::PM_SliderTickmarkOffset14テロップとスライダー間のオフセット
QStyle::PM_SliderSpaceAvailable15スライダーが移動できるスペース
QStyle::PM_DockWidgetSeparatorExtent16水平ドックウィンドウのセパレーターの幅と、 垂直ドックウィンドウのセパレーターの高さ。
QStyle::PM_DockWidgetHandleExtent17水平ドックウィンドウのハンドルの幅と垂直ドックウィンドウのハンドルの高さ。
QStyle::PM_DockWidgetFrameWidth18ドックウィンドウの枠の幅。
QStyle::PM_DockWidgetTitleMargin70ドックウィンドウのタイトルのマージン
QStyle::PM_MenuBarPanelWidth33メニューバーのフレーム幅。デフォルトは PM_DefaultFrameWidth です。
QStyle::PM_MenuBarItemSpacing34メニューバー項目間の間隔。
QStyle::PM_MenuBarHMargin36メニューバー項目とバーの左右の間隔。
QStyle::PM_MenuBarVMargin35メニューバー項目とバーの上部/下部との間隔。
QStyle::PM_ToolBarFrameWidth52ツールバー周りのフレームの幅
QStyle::PM_ToolBarHandleExtent53水平ツールバーのツールバーハンドルの幅と、垂直ツールバーのハンドルの高さ。
QStyle::PM_ToolBarItemMargin55ツールバーフレームとアイテムの間隔
QStyle::PM_ToolBarItemSpacing54ツールバーアイテム間の間隔
QStyle::PM_ToolBarSeparatorExtent56水平ツールバーのツールバーセパレータの幅と垂直ツールバーのセパレータの高さ。
QStyle::PM_ToolBarExtensionExtent57水平ツールバーのツールバー拡張ボタンの幅と、垂直ツールバーのボタンの高さ。
QStyle::PM_TabBarTabOverlap19タブが重なるピクセル数。(現在はスタイルでのみ使用され、QTabBar の内部では使用されません)
QStyle::PM_TabBarTabHSpace20タブの幅に追加される余分なスペース。
QStyle::PM_TabBarTabVSpace21タブの高さに追加される余分なスペース。
QStyle::PM_TabBarBaseHeight22タブバーとタブページの間の高さ。
QStyle::PM_TabBarBaseOverlap23タブバーがタブバーベースに重なるピクセル数。
QStyle::PM_TabBarScrollButtonWidth51
QStyle::PM_TabBarTabShiftHorizontal49タブを選択したときの水平方向のピクセル移動量。
QStyle::PM_TabBarTabShiftVertical50タブを選択したときの垂直方向のピクセル移動量
QStyle::PM_ProgressBarChunkWidth24プログレスバー表示の塊の幅。
QStyle::PM_SplitterWidth25スプリッターの幅
QStyle::PM_TitleBarHeight26タイトルバーの高さ
QStyle::PM_IndicatorWidth37チェックボックスインジケータの幅
QStyle::PM_IndicatorHeight38チェックボックスインジケータの高さ
QStyle::PM_ExclusiveIndicatorWidth39ラジオボタンインジケータの幅
QStyle::PM_ExclusiveIndicatorHeight40ラ ジオボ タ ン イ ン ジケー タ の高 さ 。
QStyle::PM_MenuPanelWidth30QMenu のボーダー幅 (全辺に適用)。
QStyle::PM_MenuHMargin28QMenu の追加ボーダー (左右に適用)。
QStyle::PM_MenuVMargin29QMenu の追加ボーダー (下端 と 上端に適用)。
QStyle::PM_MenuScrollerHeight27QMenu のスクロール領域の高さ。
QStyle::PM_MenuTearoffHeight31QMenu のティアオフ領域の高さ。
QStyle::PM_MenuDesktopFrameWidth32デスクトップ上のメニューのフレーム幅。
QStyle::PM_HeaderMarkSize47ヘッダー内のソートインジケーターのサイズ。
QStyle::PM_HeaderGripMargin48ヘッダー内のリサイズグリップのサイズ。
QStyle::PM_HeaderMargin46ソートインジケータとテキストの間のマージンのサイズ。
QStyle::PM_SpinBoxSliderHeight58オプションのスピンボックススライダーの高さ。
QStyle::PM_ToolBarIconSize59ツールバーアイコンのデフォルトサイズ
QStyle::PM_SmallIconSize62小さいアイコンのデフォルトサイズ
QStyle::PM_LargeIconSize63デフォルトの大きいアイコンのサイズ
QStyle::PM_FocusFrameHMargin65フォーカスフレームがウィジェットからはみ出す水平マージン。
QStyle::PM_FocusFrameVMargin64フォーカス・フレームがウィジェットからはみ出す垂直マージン。
QStyle::PM_IconViewIconSize61アイコン・ビューのアイコンのデフォルト・サイズ。
QStyle::PM_ListViewIconSize60リストビューのアイコンのデフォルトサイズ
QStyle::PM_ToolTipLabelFrameWidth66ツールチップラベルのフレーム幅
QStyle::PM_CheckBoxLabelSpacing67チェックボックスインジケータとそのラベルの間隔。
QStyle::PM_RadioButtonLabelSpacing74ラジオボタンのインジケータとラベルの間隔。
QStyle::PM_TabBarIconSize68タブバーのアイコンのデフォルトサイズ
QStyle::PM_SizeGripSize69サイズグリップのサイズ
QStyle::PM_MessageBoxIconSize71メッセージボックスの標準アイコンのサイズ
QStyle::PM_ButtonIconSize72ボタンアイコンのデフォルトサイズ
QStyle::PM_TextCursorWidth82行編集やテキスト編集でのカーソルの幅
QStyle::PM_TabBar_ScrollButtonOverlap81タブバーの左ボタンと右ボタンの間隔
QStyle::PM_TabCloseIndicatorWidth83タブバーのタブを閉じるボタンのデフォルトの幅
QStyle::PM_TabCloseIndicatorHeight84タブバーの閉じるボタンの高さのデフォルト値
QStyle::PM_ScrollView_ScrollBarSpacing85SH_ScrollView_FrameOnlyAroundContents を設定した場合のフレームとスクロールバーの距離
QStyle::PM_ScrollView_ScrollBarOverlap86スクロールバーとスクロールコンテンツの重なり
QStyle::PM_SubMenuOverlap87サブメニューとその親メニューの水平方向の重なり。
QStyle::PM_TreeViewIndentation (since Qt 5.4)88ツリービューでの項目のインデント。
QStyle::PM_HeaderDefaultSectionSizeHorizontal89水平ヘッダーのセクションのデフォルトサイズ。この enum 値は Qt 5.5 で導入されました。
QStyle::PM_HeaderDefaultSectionSizeVertical90垂直ヘッダーのセクションのデフォルトサイズ。この enum 値は Qt 5.5 で導入されました。
QStyle::PM_TitleBarButtonIconSize (since Qt 5.8)91タイトルバーのボタンアイコンのサイズ。
QStyle::PM_TitleBarButtonSize (since Qt 5.8)92タイトルバーのボタンのサイズ。
QStyle::PM_LineEditIconSize (since Qt 6.2)93行編集のアイコンのデフォルトサイズ。
QStyle::PM_LineEditIconMargin (since Qt 6.3)94ライン編集のアイコンの周りのマージン。
QStyle::PM_CustomBase0xf0000000カスタムピクセルメトリクスの基準値。カスタム値はこの値より大きくなければならない。

pixelMetric()も参照してください

enum QStyle::PrimitiveElement

この列挙型は様々なプリミティブ要素を記述する。プリミティブ要素は、チェックボックスインジケータやボタンベベルのような一般的なGUI要素です。

定数説明
QStyle::PE_PanelButtonCommand13アクションを開始するために使用されるボタン、例えば、QPushButton
QStyle::PE_FrameDefaultButton1このフレームは、ダイアログなどのデフォルトボタンの周りにあります。
QStyle::PE_PanelButtonBevel14ボタンのベベルを持つ一般的なパネル。
QStyle::PE_PanelButtonTool15ツールボタン用パネル、QToolButton と共に使用。
QStyle::PE_PanelLineEdit18QLineEdit のパネル。
QStyle::PE_IndicatorButtonDropDown24ドロップダウンボタンのインジケータ、例えばメニューを表示するツールボタン。
QStyle::PE_FrameFocusRect3汎用フォーカスインジケータ。
QStyle::PE_IndicatorArrowUp22汎用上矢印。
QStyle::PE_IndicatorArrowDown19汎用下向き矢印。
QStyle::PE_IndicatorArrowRight21汎用右矢印。
QStyle::PE_IndicatorArrowLeft20汎用左矢印
QStyle::PE_IndicatorSpinUp35スピンウィジェットの上シンボル、例えばQSpinBox
QStyle::PE_IndicatorSpinDown32スピンウィジェットの下シンボル。
QStyle::PE_IndicatorSpinPlus34スピンウィジェットの増加シンボル
QStyle::PE_IndicatorSpinMinus33スピンウィジェットの減少シンボル。
QStyle::PE_IndicatorItemViewItemCheck25ビューアイテムのオン/オフインジケータ。
QStyle::PE_IndicatorCheckBox26オン/オフインジケータ(例:QCheckBox )。
QStyle::PE_IndicatorRadioButton31排他的オン/オフインジケータ、例えばQRadioButton
QStyle::PE_IndicatorDockWidgetResizeHandle27ドックウィンドウのサイズ変更ハンドル。
QStyle::PE_Frame0汎用フレーム
QStyle::PE_FrameMenu6ポップアップウィンドウ/メニュー用のフレーム。QMenu も参照。
QStyle::PE_PanelMenuBar16メニューバー用のパネル。
QStyle::PE_PanelScrollAreaCorner40スクロールエリアの右下 (または左下) のパネル。
QStyle::PE_FrameDockWidget2ドックウィンドウとツールバーのパネルフレーム。
QStyle::PE_FrameTabWidget8タブウィジェットの枠
QStyle::PE_FrameLineEdit5行編集用のパネル枠
QStyle::PE_FrameGroupBox4グループボックス周りのパネル枠
QStyle::PE_FrameButtonBevel10ボタンベベルのパネル枠
QStyle::PE_FrameButtonTool11ツールボタンのパネル枠
QStyle::PE_IndicatorHeaderArrow28リストやテーブルのヘッダーでソートを示すのに使われる矢印。
QStyle::PE_FrameStatusBarItem7ステータスバーの項目の枠。QStatusBar も参照。
QStyle::PE_FrameWindow9MDI ウィンドウやドッキングウィンドウを囲む枠。
QStyle::PE_IndicatorMenuCheckMark29メニューで使われるチェックマーク。
QStyle::PE_IndicatorProgressChunk30プログレスバーインジケータのセクション。QProgressBar も参照。
QStyle::PE_IndicatorBranch23ツリービューで木の枝を表すのに使われる線。
QStyle::PE_IndicatorToolBarHandle36ツールバーのハンドル。
QStyle::PE_IndicatorToolBarSeparator37ツールバーのセパレータ。
QStyle::PE_PanelToolBar17ツールバーのパネル。
QStyle::PE_PanelTipLabel38ヒントラベルのパネル。
QStyle::PE_FrameTabBarBase12タブバーに描画されるフレームで、通常はタブウィジェットの一部ではないタブバーに描画されます。
QStyle::PE_IndicatorTabTear39非推奨。代わりに PE_IndicatorTabTearLeft を使用してください。
QStyle::PE_IndicatorTabTearLeftPE_IndicatorTabTearタブが多い場合に、タブバーの左側でタブの一部がスクロールアウトしていることを示すインジケータ。
QStyle::PE_IndicatorTabTearRight49タブが多い場合に、タブバーの右側でタブの一部がスクロールアウトしていることを示すインジケータ。
QStyle::PE_IndicatorColumnViewArrow42QColumnView の矢印。
QStyle::PE_Widget41無地のQWidget
QStyle::PE_CustomBase0xf000000カスタムプリミティブ要素の基本値。これ以上の値はすべてカスタム用に予約されています。カスタム値はこの値より大きくなければなりません。
QStyle::PE_IndicatorItemViewItemDrop43アイテムビューでドラッグ&ドロップ操作中に、アイテムビュー内のアイテムがドロップされようとしている場所を示すために描画されるインジケータ。
QStyle::PE_PanelItemViewItem44項目ビューの項目の背景。
QStyle::PE_PanelItemViewRow45アイテムビューの行の背景。
QStyle::PE_PanelStatusBar46ステータスバーのパネル
QStyle::PE_IndicatorTabClose47タブバーの閉じるボタン
QStyle::PE_PanelMenu48メニューのパネル

drawPrimitive()も参照してください

enum QStyle::RequestSoftwareInputPanel

この列挙型は、入力可能なウィジェットによってソフトウェア入力パネルがどのような状況で要求されるかを記述します。

定数説明
QStyle::RSIP_OnMouseClickAndAlreadyFocused0ユーザがウィジェットをクリックした場合、入力パネルを要求します。
QStyle::RSIP_OnMouseClick1ユーザがウィジェットをクリックした場合、入力パネルを要求する。

QInputMethodも参照してください

enum QStyle::StandardPixmap

この列挙型は利用可能な標準 pixmap を記述する。標準 pixmap は、既存の GUI スタイルまたはガイドラインに従うことができる pixmap です。

定数説明
QStyle::SP_TitleBarMinButton1タイトルバーの最小化ボタン (QMdiSubWindow など)。
QStyle::SP_TitleBarMenuButton0タイトルバーのメニューボタン。
QStyle::SP_TitleBarMaxButton2タイトルバーの最大化ボタン
QStyle::SP_TitleBarCloseButton3タイトルバーの「閉じる」ボタン
QStyle::SP_TitleBarNormalButton4タイトルバーの「通常(復元)」ボタン
QStyle::SP_TitleBarShadeButton5タイトルバーのシェードボタン
QStyle::SP_TitleBarUnshadeButton6タイトルバーのシェード解除ボタン
QStyle::SP_TitleBarContextHelpButton7タイトルバーのコンテキストヘルプボタン
QStyle::SP_MessageBoxInformation9情報」アイコン
QStyle::SP_MessageBoxWarning10警告」アイコン
QStyle::SP_MessageBoxCritical11重要」アイコン
QStyle::SP_MessageBoxQuestion12質問」アイコン
QStyle::SP_DesktopIcon13デスクトップ」アイコン
QStyle::SP_TrashIcon14ゴミ箱」アイコン。
QStyle::SP_ComputerIcon15マイコンピュータ」アイコン。
QStyle::SP_DriveFDIcon16フロッピー」アイコン。
QStyle::SP_DriveHDIcon17ハードドライブアイコン。
QStyle::SP_DriveCDIcon18CDアイコン。
QStyle::SP_DriveDVDIcon19DVDアイコン。
QStyle::SP_DriveNetIcon20ネットワークアイコン。
QStyle::SP_DirHomeIcon56ホーム・ディレクトリのアイコン。
QStyle::SP_DirOpenIcon21開いているディレクトリのアイコン。
QStyle::SP_DirClosedIcon22閉じたディレクトリアイコン。
QStyle::SP_DirIcon38ディレクトリアイコン。
QStyle::SP_DirLinkIcon23ディレクトリへのリンクアイコン
QStyle::SP_DirLinkOpenIcon24開いているディレクトリへのリンクアイコン
QStyle::SP_FileIcon25ファイルアイコン
QStyle::SP_FileLinkIcon26ファイルアイコンへのリンク
QStyle::SP_FileDialogStart29ファイルダイアログの「開始」アイコン。
QStyle::SP_FileDialogEnd30ファイルダイアログの「終了」アイコン
QStyle::SP_FileDialogToParent31ファイルダイアログの「親ディレクトリ」アイコン
QStyle::SP_FileDialogNewFolder32ファイルダイアログの「新規フォルダの作成」アイコン
QStyle::SP_FileDialogDetailedView33ファイルダイアログの詳細表示アイコン
QStyle::SP_FileDialogInfoView34ファイルダイアログのファイル情報アイコン
QStyle::SP_FileDialogContentsView35ファイルダイアログのコンテンツ表示アイコン
QStyle::SP_FileDialogListView36ファイルダイアログのリスト表示アイコン
QStyle::SP_FileDialogBack37ファイルダイアログの戻る矢印
QStyle::SP_DockWidgetCloseButton8ドックウィンドウの閉じるボタン (QDockWidget も参照)。
QStyle::SP_ToolBarHorizontalExtensionButton27水平ツールバーの拡張ボタン
QStyle::SP_ToolBarVerticalExtensionButton28垂直ツールバーの拡張ボタン
QStyle::SP_DialogOkButton39QDialogButtonBox の標準 OK ボタンのアイコン。
QStyle::SP_DialogCancelButton40QDialogButtonBox の標準キャンセルボタンのアイコン。
QStyle::SP_DialogHelpButton41QDialogButtonBox の標準ヘルプボタンのアイコン。
QStyle::SP_DialogOpenButton42QDialogButtonBox の標準「開く」ボタン用アイコン。
QStyle::SP_DialogSaveButton43QDialogButtonBox の標準保存ボタン用アイコン .
QStyle::SP_DialogCloseButton44QDialogButtonBox の標準閉じるボタン用アイコン .
QStyle::SP_DialogApplyButton45QDialogButtonBox の標準適用ボタン用アイコン .
QStyle::SP_DialogResetButton46QDialogButtonBox の標準リセットボタン用アイコン .
QStyle::SP_DialogDiscardButton47QDialogButtonBox の標準破棄ボタン用アイコン .
QStyle::SP_DialogYesButton48QDialogButtonBox の標準はいボタン用アイコン .
QStyle::SP_DialogNoButton49QDialogButtonBox の標準「いいえ」ボタン用アイコン。
QStyle::SP_ArrowUp50上向きの矢印。
QStyle::SP_ArrowDown51下向きのアイコン矢印。
QStyle::SP_ArrowLeft52左向きのアイコン矢印。
QStyle::SP_ArrowRight53右向きのアイコン矢印。
QStyle::SP_ArrowBack54現在のレイアウト方向がQt::LeftToRight の場合は SP_ArrowLeft に相当し、そうでない場合は SP_ArrowRight。
QStyle::SP_ArrowForward55現在のレイアウト方向がQt::LeftToRight の場合は SP_ArrowRight に相当し、それ以外の場合は SP_ArrowLeft。
QStyle::SP_CommandLink57Vistaスタイルのコマンドリンクグリフを示すのに使われるアイコン。
QStyle::SP_VistaShield58Windows Vista で UAC プ ロ ン プ ト を示すために用い ら れ る ア イ コ ン。こ れ以外のすべてのプ ラ ッ ト フ ォームでは null pixmap かア イ コ ンが返 さ れます。
QStyle::SP_BrowserReload59現在のページを再読み込みすべきことを示すアイコン。
QStyle::SP_BrowserStop60ページの読み込みを停止することを示すアイコン。
QStyle::SP_MediaPlay61メディアの再生を開始することを示すアイコン。
QStyle::SP_MediaStop62メディアが再生を停止することを示すアイコン。
QStyle::SP_MediaPause63メディアが再生を一時停止することを示すアイコン。
QStyle::SP_MediaSkipForward64メディアを前方にスキップすることを示すアイコン。
QStyle::SP_MediaSkipBackward65メディアが後方にスキップすることを示すアイコン。
QStyle::SP_MediaSeekForward66メディアが前方にシークすることを示すアイコン。
QStyle::SP_MediaSeekBackward67メディアが後方にシークすることを示すアイコン。
QStyle::SP_MediaVolume68ボリュームコントロールを示すアイコン。
QStyle::SP_MediaVolumeMuted69ミュートボリュームコントロールを示すアイコン。
QStyle::SP_LineEditClearButton (since Qt 5.2)70QLineEdit の標準クリアボタンのアイコン。
QStyle::SP_DialogYesToAllButton (since Qt 5.14)71QDialogButtonBox の標準YesToAllボタンのアイコン。
QStyle::SP_DialogNoToAllButton (since Qt 5.14)72QDialogButtonBox の標準 NoToAll ボタンのアイコン。
QStyle::SP_DialogSaveAllButton (since Qt 5.14)73QDialogButtonBox の標準 SaveAll ボタンのアイコン。
QStyle::SP_DialogAbortButton (since Qt 5.14)74QDialogButtonBox の標準中止ボタンのアイコン .
QStyle::SP_DialogRetryButton (since Qt 5.14)75QDialogButtonBox の標準 Retry ボタンのアイコン .
QStyle::SP_DialogIgnoreButton (since Qt 5.14)76QDialogButtonBox の標準 Ignore ボタンのアイコン .
QStyle::SP_RestoreDefaultsButton (since Qt 5.14)77QDialogButtonBox の標準 RestoreDefaults ボタンのアイコン .
QStyle::SP_TabCloseButton (since Qt 6.3)78QTabBar のタブの閉じるボタンのアイコン .
QStyle::SP_CustomBase0xf0000000カスタム標準 pixmap の基本値。カスタム値はこの値より大きくなければならない。

standardIcon()も参照してください

enum QStyle::StateFlag
flags QStyle::State

この列挙型は、プリミティブ要素を描画するときに使用されるフラグを記述します。

すべてのプリミティブがこれらのフラグをすべて使用するわけではなく、フラグの意味はアイテムによって異なる可能性があることに注意してください。

定数説明
QStyle::State_None0x00000000ウィジェットに状態がないことを示す。
QStyle::State_Active0x00010000ウィジェットがアクティブであることを示す。
QStyle::State_AutoRaise0x00001000ツールボタンで自動レイズ外観を使用するかどうかを示すために使用されます。
QStyle::State_Children0x00080000アイテム・ビュー・ブランチに子があるかどうかを示すのに使用します。
QStyle::State_DownArrow0x00000040ウィジェットに下矢印を表示するかどうかを指定します。
QStyle::State_Editing0x00400000ウィジェットでエディタを開くかどうかを指定します。
QStyle::State_Enabled0x00000001ウィジェットが有効かどうかを示すのに使用される。
QStyle::State_HasEditFocus0x01000000ウィジェットが現在編集フォーカスを持っているかどうかを示すのに使われます。
QStyle::State_HasFocus0x00000100ウィジェットにフォーカスがあるかどうかを示すのに使用される。
QStyle::State_Horizontal0x00000080ツールバーなど、ウィジェットが水平にレイアウトされているかどうかを示します。
QStyle::State_KeyboardFocusChange0x00800000フォーカスがキーボード(タブ、バックタブ、ショートカットなど)で変更されたかどうかを示します。
QStyle::State_MouseOver0x00002000ウィジェットがマウスの下にあるかどうかを示します。
QStyle::State_NoChange0x00000010トライステートチェックボックスを示す。
QStyle::State_Off0x00000008ウィジェットがチェックされていないかどうかを示します。
QStyle::State_On0x00000020ウィジェットがチェックされているかどうかを示します。
QStyle::State_Raised0x00000002ボタンが上げられているかどうかを示すのに使用される。
QStyle::State_ReadOnly0x02000000ウィジェットが読み取り専用かどうかを示すのに使用されます。
QStyle::State_Selected0x00008000ウィジェットが選択されているかどうかを示すために使用されます。
QStyle::State_Item0x00100000アイテムビューで使用され、水平ブランチが描画されるかどうかを示します。
QStyle::State_Open0x00040000ツリーの枝が開いているかどうかを示すためにアイテムビューで使用されます。
QStyle::State_Sibling0x00200000縦線を引く必要があるかどうかを示すためにアイテムビューで使用されます(兄弟の場合)。
QStyle::State_Sunken0x00000004ウィジェットが沈んでいるか、押されているかを示すために使用されます。
QStyle::State_UpArrow0x00004000ウィジェットに上矢印が表示されているかどうかを示すのに使用されます。
QStyle::State_Mini0x08000000ミニスタイルのMacウィジェットまたはボタンを示すのに使用します。
QStyle::State_Small0x04000000小型スタイルのMacウィジェットまたはボタンを示すのに使用されます。

State型はQFlags<StateFlag>のtypedefである。StateFlagの値のORの組み合わせを格納する。

drawPrimitive()も参照してください

enum QStyle::StyleHint

この列挙型は利用可能なスタイルヒントを記述する。スタイルヒントは、一般的なルックおよび/またはフィールのヒントです。

定数説明
QStyle::SH_EtchDisabledText0無効化されたテキストは、Windows のように "エッチング" されます。
QStyle::SH_DitherDisabledText1無効化されたテキストは、Motifのように "ディザ "されます。
QStyle::SH_ScrollBar_ContextMenu62スクロールバーにコンテキストメニューがあるかどうか。
QStyle::SH_ScrollBar_MiddleClickAbsolutePosition2ブール値。trueの場合、スクロールバーの中央をクリックすると、スライダーがその位置にジャンプする。falseの場合、中クリックは無視されます。
QStyle::SH_ScrollBar_LeftClickAbsolutePosition39ブール値。trueの場合、スクロールバーを左クリックすると、スライダーはその位置にジャンプします。falseの場合、左クリックは各コントロールに適した動作をする。
QStyle::SH_ScrollBar_ScrollWhenPointerLeavesControl3ブール値。true の場合、スクロールバーSubControl をクリックし、マウスボタンを押したままポインタをSubControl の外に移動すると、スクロールバーはスクロールし続ける。false の場合、ポインタがSubControl から離れるとスクロールバーはスクロールを停止します。
QStyle::SH_ScrollBar_RollBetweenButtons63ブール値。trueの場合、スクロールバーのボタン(SC_ScrollBarAddLine またはSC_ScrollBarSubLine)をクリックし、反対側のボタン(ローリング)にドラッグすると、新しいボタンが押され、古いボタンは解放されます。false の場合、元のボタンはリリースされ、何も起こりません (プッシュボタンのようなもの)。
QStyle::SH_TabBar_Alignment5QTabWidget 内のタブの配置。取り得る値はQt::AlignLeftQt::AlignCenterQt::AlignRight
QStyle::SH_Header_ArrowAlignment6並べ替え イ ン ジケー タ の配置 リ ス ト や表のヘ ッ ダに表示 さ れ る こ と のあ る 並べ替え イ ン ジケー タ の配置。指定可能な値は、Qt::Alignment の値(つまり、Qt::AlignmentFlag フラグの OR の組み合わせ)です。
QStyle::SH_Slider_SnapToValue7スライダーはWindowsのように移動中に値にスナップします。
QStyle::SH_Slider_SloppyKeyEvents8キー操作はぞんざいに扱われます。たとえば、垂直のスライダーを左に押すと1行減算されます。
QStyle::SH_ProgressDialog_CenterCancelButton9プログレスダイアログのボタンを中央に、それ以外は右揃えに。
QStyle::SH_ProgressDialog_TextLabelAlignment10プログレスダイアログのテキストラベルの配置。WindowsではQt::AlignCenter 、それ以外はQt::AlignVCenter
QStyle::SH_PrintDialog_RightAlignButtons11印刷ダイアログのボタンを右揃えにする。
QStyle::SH_MainWindow_SpaceBelowMenuBar12メニューバーとドックエリアの間に1ピクセルか2ピクセルのスペースを空ける。
QStyle::SH_FontDialog_SelectAssociatedText13行編集でテキストを選択するとき、リストボックスから項目を選択するとき、または行編集にフォーカスが当たったとき、Windowsで行われるように。
QStyle::SH_Menu_KeyboardSearch66入力すると、関連する項目がメニューから検索され、そうでなければニーモニックのみが考慮される。
QStyle::SH_Menu_AllowActiveAndDisabled14無効になっているメニュー項目を有効にする。
QStyle::SH_Menu_SpaceActivatesItem15スペースバーを押すと、Motifと同じようにその項目がアクティブになる。
QStyle::SH_Menu_SubMenuPopupDelay16サブメニューを開く前に待つミリ秒数(Windowsでは256、Motifでは96)。
QStyle::SH_Menu_Scrollable30ポップアップメニューがスクロールをサポートするかどうか。
QStyle::SH_Menu_SloppySubMenus33ポップアップメニューが、メニューの他の項目を横切りながらマウスカーソルをサブメニューに移動させることをサポートしなければならないかどうか。これは最近のほとんどのデスクトップ・プラットフォームでサポートされています。
QStyle::SH_Menu_SubMenuUniDirection105Qt 5.5 以降。カーソルがサブメニューに向かって移動しなければならないか(macOS のように)、あるいは、だらだらとタイムアウトする前にサブメニューに到達していれば、カーソルはどの方向にも移動できるか。
QStyle::SH_Menu_SubMenuUniDirectionFailCount106Qt 5.5 以降。SH_Menu_SubMenuUniDirection が定義されている場合、この enum は、ずさんなサブメニューが破棄されるまでのマウス移動の失敗回数を定義します。これは、ユニディレクションアルゴリズムの "厳密さ "を制御するために使用できます。
QStyle::SH_Menu_SubMenuSloppySelectOtherActions107Qt 5.5.Qt 5.5.以降では、マウスがぞんざいなサブメニューに移動したときに、他のアクションアイテムが選択されるようになりました。
QStyle::SH_Menu_SubMenuSloppyCloseTimeout108Qt 5.5 から。ずさんなサブメニューを閉じるときのタイムアウト。
QStyle::SH_Menu_SubMenuResetWhenReenteringParent109Qt 5.5 から。子サブメニューから親サブメニューに入るとき、だらしない状態をリセットして、効果的に子サブメニューを閉じ、現在のサブメニューをアクティブにするか。
QStyle::SH_Menu_SubMenuDontStartSloppyOnLeave110Qt 5.5 以降。マウスがサブメニューから離れたときに、だらしないタイマーを開始しないように。
QStyle::SH_ScrollView_FrameOnlyAroundContents17スクロールビューのフレームが、コンテンツの周りだけに描画されるか(Motif のように)、コンテンツ、スクロールバー、コーナーウィジェットの周りに描画されるか(Windows のように)。
QStyle::SH_MenuBar_AltKeyNavigation18メニューバーの項目は、Altキーを押しながら矢印キーで選択する。
QStyle::SH_ComboBox_ListMouseTracking19コンボボックスのドロップダウンリストでのマウストラッキング。
QStyle::SH_Menu_MouseTracking20ポップアップメニューでのマウス操作
QStyle::SH_MenuBar_MouseTracking21メニューバーでのマウス操作
QStyle::SH_Menu_FillScreenWithScroll45スクロールするポップアップを画面いっぱいに表示するかどうか。
QStyle::SH_Menu_SelectionWrap73ポップアップが選択を折り返すようにするかどうか、つまり、選択時に次の項目が最初の項目になるようにするかどうか。
QStyle::SH_ItemView_ChangeHighlightOnFocus22フォーカスを失ったときに選択された項目をグレーアウトするようにしました。
QStyle::SH_Widget_ShareActivation23フローティング・モデルレス・ダイアログでの共有アクティブ化を有効にする。
QStyle::SH_TabBar_SelectMouseType4どのタイプのマウスイベントがタブを選択させるか
QStyle::SH_ListViewExpand_SelectMouseType40どのタイプのマウスイベントがリストビューの拡張を選択させるか
QStyle::SH_TabBar_PreferNoArrows38タブバーがスクロール矢印を防ぐためにサイズを示唆するかどうか。
QStyle::SH_ComboBox_Popup25コンボボックスのドロップダウンメニューとしてポップアップを許可する。
QStyle::SH_Workspace_FillSpaceOnMaximize24ワークスペースはクライアント領域を最大化する。
QStyle::SH_TitleBar_NoBorder26タイトルバーにボーダーを表示しない。
QStyle::SH_Slider_StopMouseOverSlider27スライダーがマウス位置に達したときに自動リピートを停止する。
QStyle::SH_BlinkCursorWhenTextSelected28テキスト選択時にカーソルを点滅させるかどうか。
QStyle::SH_RichText_FullWidthSelection29リッチテキストの選択範囲をドキュメントの幅いっぱいにするかどうか。
QStyle::SH_GroupBox_TextLabelVerticalAlignment31グループボックスのテキストラベルを垂直に揃える方法。
QStyle::SH_GroupBox_TextLabelColor32グループボックスのテキストラベルをペイントする方法。
QStyle::SH_DialogButtons_DefaultButton36ダイアログのボタンウィジェットで、どのボタンがデフォルトのステータスになるか。
QStyle::SH_ToolBox_SelectedPageTitleBold37QToolBox で選択されたページタイトルの太字化。
QStyle::SH_LineEdit_PasswordCharacter35パスワードに使用する Unicode 文字。
QStyle::SH_LineEdit_PasswordMaskDelay103可視文字がパスワード文字でマスクされるまでの遅延をミリ秒単位で決定します。この列挙値は Qt 5.4 で追加されました。
QStyle::SH_Table_GridLineColor34表のグリッドの RGBA 値。
QStyle::SH_UnderlineShortcut41ショートカットに下線を引くかどうか。
QStyle::SH_SpinBox_AnimateButton42スピンボックスで上下が押された時のクリックのアニメーション。
QStyle::SH_SpinBox_KeyPressAutoRepeatRate43スピンボックスのキー押下の自動リピート間隔。
QStyle::SH_SpinBox_ClickAutoRepeatRate44スピンボックスのマウスクリックの自動リピート間隔.
QStyle::SH_SpinBox_ClickAutoRepeatThreshold83スピンボックスのマウスクリックの自動リピートのしきい値。
QStyle::SH_SpinBox_SelectOnStep (since Qt 6.3)119ボタンまたは上下キーを使用して値を変更すると、自動的にテキストが選択されるかどうかを指定します。
QStyle::SH_ToolTipLabel_Opacity46ヒントラベルの不透明度を示す整数で、0は完全に透明、255は完全に不透明です。
QStyle::SH_DrawMenuBarSeparator47メニューバーにセパレータを表示するかどうかを指定します。
QStyle::SH_TitleBar_ModifyNotification48変更されたウィンドウのタイトルバーに '*' を表示するかどうかを指定します。
QStyle::SH_Button_FocusPolicy49ボタンのデフォルトのフォーカス・ポリシー。
QStyle::SH_CustomBase0xf0000000カスタム・スタイル・ヒントの基本値。カスタム値はこの値より大きくなければなりません。
QStyle::SH_MessageBox_UseBorderForButtonSpacing50メッセージ・ボックスのボタンの間隔にボタンの境界線(ボタンの高さの半分として計算される)を使用するかどうかを示すブール値。
QStyle::SH_MessageBox_CenterButtons72メッセージボックスのボタンを中央に配置するかどうかを示す boolean(QDialogButtonBox::setCentered()を参照)。
QStyle::SH_MessageBox_TextInteractionFlags70メッセージボックスのテキストがユーザーインタラクション(選択など)を許可するかどうかを示す boolean。
QStyle::SH_TitleBar_AutoRaise51タイトルバーのコントロールがマウスオーバーしたときに更新するかどうかを示す boolean。
QStyle::SH_ToolButton_PopupDelay52ツールボタンに付属するメニューのポップアップ遅延をミリ秒単位で示すint。
QStyle::SH_FocusFrame_Mask53フォーカスフレームのマスク。
QStyle::SH_RubberBand_Mask54ゴムバンドのマスク。
QStyle::SH_WindowFrame_Mask55ウィンドウ枠のマスク。
QStyle::SH_SpinControls_DisableOnBounds56スピン範囲の境界に達したときに、スピンコントロールを無効として表示するかどうかを決定します。
QStyle::SH_Dial_BackgroundRole57文字盤ウィジェットのスタイルの優先背景役割(QPalette::ColorRole )を定義します。
QStyle::SH_ComboBox_LayoutDirection58コンボボックスのレイアウト方向。デフォルトでは、QStyleOption::direction 変数によって示される方向と同じでなければなりません。
QStyle::SH_ItemView_EllipsisLocation59ビューアイテムに収まりきらないほど長いアイテムのテキストに楕円を追加する位置。
QStyle::SH_ItemView_ShowDecorationSelected60アイテムビューのアイテムが選択されたとき、枝などの装飾もハイライトする。
QStyle::SH_ItemView_ActivateItemOnSingleClick61ユーザーがアイテムビューのアイテムをシングルクリックしたときに、activatedシグナルを発する。そうでなければ、ユーザーがアイテムをダブルクリックしたときにシグナルを発する。
QStyle::SH_Slider_AbsoluteSetButtons64どのマウスボタンがクリックされた位置にスライダーの値を設定するか。
QStyle::SH_Slider_PageSetButtons65どのマウスボタンがスライダーに値をページステップさせるか。
QStyle::SH_TabBar_ElideMode67タブバーのデフォルトのエライディングスタイル。
QStyle::SH_DialogButtonLayout68QDialogButtonBox でボタンがどのようにレイアウトされるかを制御し、QDialogButtonBox::ButtonLayout enum を返します。
QStyle::SH_WizardStyle78QWizard のルック&フィールを制御します。QWizard::WizardStyle enum を返します。
QStyle::SH_FormLayoutWrapPolicy85QFormLayout における行の折り返し方法のデフォルトを指定します。QFormLayout::RowWrapPolicy enum を返します。
QStyle::SH_FormLayoutFieldGrowthPolicy88QFormLayout におけるフィールドの増加方法のデフォルトを指定します。QFormLayout::FieldGrowthPolicy enum を返します。
QStyle::SH_FormLayoutFormAlignment89QFormLayout が使用可能なスペース内でその内容をどのように整列させるかについてのデフォルトを提供します。Qt::Alignment enum を返します。
QStyle::SH_FormLayoutLabelAlignment90QFormLayout のラベルを使用可能なスペース内に配置する方法のデフォルトを指定します。Qt::Alignment enum を返します。
QStyle::SH_ItemView_ArrowKeysNavigateIntoChildren79ツリービューが展開され、右矢印キーが押されたときに、最初の子を選択するかどうかを制御します。
QStyle::SH_ComboBox_PopupFrameStyle69コンボボックスポップアップメニューを描画するときに使用されるフレームスタイル。
QStyle::SH_DialogButtonBox_ButtonsHaveIcons71QDialogButtonBox の StandardButtons にアイコンを付けるかどうかを指定します。
QStyle::SH_ItemView_MovementWithoutUpdatingSelection74アイテムビューは、選択範囲を変更することなく、現在のアイテムを示すことができます。
QStyle::SH_ToolTip_Mask75ツールチップのマスク。
QStyle::SH_FocusFrame_AboveWidget76FocusFrameは、"フォーカスしている "ウィジェットの上にスタックされます。
QStyle::SH_TextControl_FocusIndicatorTextCharFormat77QTextBrowser などで表示されるリッチテキスト文書で、フォーカスされたアンカーをハイライトするために使用されるテキスト形式を指定します。フォーマットは、QStyleHintReturnVariant の返り値のバリアントで返されるQTextCharFormat でなければなりません。QTextFormat::OutlinePen プロパティはアウトラインに、QTextFormat::BackgroundBrush はハイライト領域の背景に使われます。
QStyle::SH_Menu_FlashTriggeredItem81Flashトリガーアイテム。
QStyle::SH_Menu_FadeOutOnHide82メニューをすぐに隠すのではなく、フェードアウトさせます。
QStyle::SH_TabWidget_DefaultTabPosition86タブ・ウィジェットのタブ・バーのデフォルト位置。
QStyle::SH_ToolBar_Movable87ツールバーをデフォルトで移動可能にするかどうか。
QStyle::SH_ItemView_PaintAlternatingRowColorsForEmptyArea84QTreeView アイテムのない領域で行の色を交互に塗るかどうか。
QStyle::SH_Menu_Mask80ポップアップメニューのマスク
QStyle::SH_ItemView_DrawDelegateFrame91デリゲート・ウィジェットにフレームを付けるかどうか。
QStyle::SH_TabBar_CloseButtonPosition92タブバーのタブの閉じるボタンの位置を決めます。
QStyle::SH_DockWidget_ButtonsHaveFrame93dockwidget ボタンにフレームを付けるかどうかを指定します。デフォルトはtrueです。
QStyle::SH_ToolButtonStyle94Qt::ToolButtonFollowStyle を使用するツールボタンのデフォルトのシステムスタイルを決定します。
QStyle::SH_RequestSoftwareInputPanel95入力ウィジェットでソフトウェア入力パネルを要求するタイミングを決定します。QStyle::RequestSoftwareInputPanel 型の列挙型を返します。
QStyle::SH_ScrollBar_Transient96スタイルが一時的なスクロール バーをサポートするかどうかを決定します。一時的なスクロール バーは、コンテンツがスクロールされると表示され、必要なくなると消えます。
QStyle::SH_Menu_SupportsSections97スタイルが、メニューにセクションを表示するか、それとも単なるセパレータとして扱うかを決定します。セクションは、テキストとアイコンのヒントを持つセパレータです。
QStyle::SH_ToolTip_WakeUpDelay98ツールチップが表示されるまでの遅延時間をミリ秒単位で指定します。
QStyle::SH_ToolTip_FallAsleepDelay99ツールチップが表示されている時、新しいウェイクタイムが必要になるまでの遅延時間(ミリ秒単位)を決定します。新しいウェイクが必要ない場合、ユーザが要求したツールチップはほぼ即座に表示されます。
QStyle::SH_Widget_Animate100非推奨。代わりに SH_Widget_Animation_Duration を使用してください。
QStyle::SH_Splitter_OpaqueResize101スプリッタをインタラクティブに動かしている間、ウィジェットが動的に (不透明で) サイズ変更されるかどうかを決定します。この enum 値は Qt 5.2 で導入されました。
QStyle::SH_TabBar_ChangeCurrentDelay104タブバーをドラッグしている間、現在のタブが変更されるまでの遅延をミリ秒単位で決定します。この enum 値は Qt 5.4 で導入されました。
QStyle::SH_ItemView_ScrollMode111スタイルで指定されたデフォルトの垂直・水平スクロールモード。QAbstractItemView::setVerticalScrollMode() とQAbstractItemView::setHorizontalScrollMode() でオーバーライドできます。この enum 値は Qt 5.7 で導入されました。
QStyle::SH_TitleBar_ShowToolTipsOnButtons112ウィンドウのタイトルバーボタンにツールヒントを表示するかどうかを決定します。例えばMacスタイルでは、これはfalseに設定されます。この enum 値は Qt 5.10 で導入されました。
QStyle::SH_Widget_Animation_Duration113アニメーションの持続時間(ms)を決定します。ゼロに等しい値は、アニメーションが無効になることを意味します。この enum 値は Qt 5.10 で導入されました。
QStyle::SH_ComboBox_AllowWheelScrolling114QComboBox 内のスクロールにマウスホイールを使用できるかどうかを決定します。これは Mac スタイルを除くすべてのスタイルでデフォルトでオンになっています。この enum 値は Qt 5.10 で導入されました。
QStyle::SH_SpinBox_ButtonsInsideFrame115スピンボックスボタンが行編集フレーム内にあるかどうかを決定します。この enum 値は Qt 5.11 で導入されました。
QStyle::SH_SpinBox_StepModifier116どのQt::KeyboardModifierQAbstractSpinBox のステップレートを増加させるかを決定します。可能な値はQt::NoModifierQt::ControlModifier (デフォルト)、Qt::ShiftModifier です。Qt::NoModifier はこの機能を無効にします。この列挙値はQt 5.12で導入されました。
QStyle::SH_TabBar_AllowWheelScrolling117QTabBarこの enum 値は Qt 6.1 で導入されました。
QStyle::SH_Table_AlwaysDrawLeftTopGridLines118この enum 値は Qt 6.1 で導入されました。デフォルトは false です。この enum 値は Qt 6.3 で導入されました。

styleHint()も参照してください

enum QStyle::SubControl
flags QStyle::SubControls

この enum は利用可能なサブコントロールを記述します。サブコントロールは、複合コントロール (ComplexControl) 内のコントロール要素です。

定数説明
QStyle::SC_None0x00000000他のサブコントロールにマッチしない特別な値。
QStyle::SC_ScrollBarAddLine0x00000001スクロールバーの追加行 (すなわち、下/右矢印);QScrollBar も参照。
QStyle::SC_ScrollBarSubLine0x00000002スクロールバーのサブ行 (すなわち、上/左矢印)。
QStyle::SC_ScrollBarAddPage0x00000004スクロールバーのページ追加(つまり、ページダウン)。
QStyle::SC_ScrollBarSubPage0x00000008スクロールバーのサブページ (すなわち、ページアップ)。
QStyle::SC_ScrollBarFirst0x00000010スクロールバーの最初の行(すなわち、ホーム)。
QStyle::SC_ScrollBarLast0x00000020スクロールバーの最終行 (つまり終了)
QStyle::SC_ScrollBarSlider0x00000040スクロールバーのスライダーハンドル
QStyle::SC_ScrollBarGroove0x00000080スライダーハンドルが移動できる領域を含む特別なサブコントロール。
QStyle::SC_SpinBoxUp0x00000001Spin widget up/increase;QSpinBox も参照。
QStyle::SC_SpinBoxDown0x00000002ウィジェットをスピンダウン/減少。
QStyle::SC_SpinBoxFrame0x00000004スピン・ウィジェット・フレーム。
QStyle::SC_SpinBoxEditField0x00000008スピン・ウィジェット編集フィールド。
QStyle::SC_ComboBoxEditField0x00000002コンボボックス編集フィールド;QComboBox も参照。
QStyle::SC_ComboBoxArrow0x00000004コンボボックス矢印ボタン。
QStyle::SC_ComboBoxFrame0x00000001コンボボックス枠。
QStyle::SC_ComboBoxListBoxPopup0x00000008コンボボックスポップアップの参照矩形。ポップアップの位置を計算するのに使われる。
QStyle::SC_SliderGroove0x00000001スライダーハンドル スライダーハンドルが移動できる領域を含む特別なサブコントロール。
QStyle::SC_SliderHandle0x00000002スライダーハンドル
QStyle::SC_SliderTickmarks0x00000004スライダーの目盛り。
QStyle::SC_ToolButton0x00000001ツールボタン (QToolButton も参照)。
QStyle::SC_ToolButtonMenu0x00000002ツールボタンでポップアップメニューを開くためのサブコントロール。
QStyle::SC_TitleBarSysMenu0x00000001システムメニューボタン(リストア、クローズなど)。
QStyle::SC_TitleBarMinButton0x00000002最小化ボタン
QStyle::SC_TitleBarMaxButton0x00000004最大化ボタン
QStyle::SC_TitleBarCloseButton0x00000008閉じるボタン
QStyle::SC_TitleBarLabel0x00000100ウィンドウのタイトルラベル
QStyle::SC_TitleBarNormalButton0x00000010通常(復元)ボタン
QStyle::SC_TitleBarShadeButton0x00000020遮光ボタン
QStyle::SC_TitleBarUnshadeButton0x00000040シェード解除ボタン
QStyle::SC_TitleBarContextHelpButton0x00000080コンテキストヘルプボタン
QStyle::SC_DialHandle0x00000002ダイヤルのハンドル (つまりダイヤルを操作するために使うもの)。
QStyle::SC_DialGroove0x00000001ダイヤルの溝
QStyle::SC_DialTickmarks0x00000004ダイヤルの目盛り
QStyle::SC_GroupBoxFrame0x00000008グループボックスの枠
QStyle::SC_GroupBoxLabel0x00000002グループボックスのタイトル
QStyle::SC_GroupBoxCheckBox0x00000001グループボックスのオプションのチェックボックス
QStyle::SC_GroupBoxContents0x00000004グループボックスの内容
QStyle::SC_MdiNormalButton0x00000002メニューバーのMDIサブウィンドウの通常ボタン。
QStyle::SC_MdiMinButton0x00000001メニューバーのMDIサブウィンドウの最小化ボタン。
QStyle::SC_MdiCloseButton0x00000004メニューバーのMDIサブウィンドウの閉じるボタン。
QStyle::SC_All0xffffffffすべてのサブコントロールにマッチする特別な値。

SubControls型はQFlags<SubControl>の型定義である。SubControlsの値のORの組み合わせを格納します。

ComplexControlも参照してください

enum QStyle::SubElement

この列挙型は、ウィジェットのサブ領域を表します。スタイルの実装は、ウィジェットの異なる部分を描画するためにこれらの領域を使用します。

定数説明
QStyle::SE_PushButtonContents0ラベルを含む領域(テキスト付きアイコンまたはピクセルマップ)。
QStyle::SE_PushButtonFocusRect1フォーカス矩形の領域(通常、コンテンツ矩形よりも大きい)。
QStyle::SE_PushButtonLayoutItem37親レイアウトにカウントされる領域。
QStyle::SE_PushButtonBevel56[5.15 以降] ボタンのベベルに使われる領域。
QStyle::SE_CheckBoxIndicator2状態インジケータ(チェックマークなど)の領域。
QStyle::SE_CheckBoxContents3ラベル(テキストまたはピクセルマップ)の領域。
QStyle::SE_CheckBoxFocusRect4フォーカスインジケータ用の領域。
QStyle::SE_CheckBoxClickRect5クリック可能な領域で、デフォルトは SE_CheckBoxFocusRect です。
QStyle::SE_CheckBoxLayoutItem32親レイアウトでカウントされる領域
QStyle::SE_DateTimeEditLayoutItem34親レイアウトでカウントされる領域
QStyle::SE_RadioButtonIndicator6状態インジケータの領域
QStyle::SE_RadioButtonContents7ラベルの領域
QStyle::SE_RadioButtonFocusRect8フォーカス インジケータの領域。
QStyle::SE_RadioButtonClickRect9クリック可能な領域で、デフォルトはSE_RadioButtonFocusRectです。
QStyle::SE_RadioButtonLayoutItem38親レイアウトでカウントされる領域
QStyle::SE_ComboBoxFocusRect10フォーカスインジケータの領域
QStyle::SE_SliderFocusRect11フォーカスインジケータの領域。
QStyle::SE_SliderLayoutItem39親レイアウトでカウントされる領域
QStyle::SE_SpinBoxLayoutItem40親レイアウトでカウントされる領域
QStyle::SE_ProgressBarGroove12溝の領域。
QStyle::SE_ProgressBarContents13進捗インジケータの領域
QStyle::SE_ProgressBarLabel14テキストラベルの領域。
QStyle::SE_ProgressBarLayoutItem36親レイアウトでカウントされる領域。
QStyle::SE_FrameContents27フレーム内容の領域。
QStyle::SE_ShapedFrameContents51QStyleOptionFrame のシェイプを使用したフレームコンテンツの領域 ; を参照。QFrame
QStyle::SE_FrameLayoutItem42親レイアウトでカウントされる領域。
QStyle::SE_HeaderArrow17ヘッダーのソートインジケータの領域。
QStyle::SE_HeaderLabel16ヘッダーのラベルの領域。
QStyle::SE_LabelLayoutItem35親レイアウトでカウントされる領域。
QStyle::SE_LineEditContents26行編集の内容の領域。
QStyle::SE_TabWidgetLeftCorner21タブウィジェットの左コーナーウィジェットの領域
QStyle::SE_TabWidgetRightCorner22タブウィジェットの右コーナーウィジェットの領域
QStyle::SE_TabWidgetTabBar18タブウィジェットのタブバーウィジェットの領域
QStyle::SE_TabWidgetTabContents20タブウィジェットの中身の領域
QStyle::SE_TabWidgetTabPane19タブウィジェットのペインの領域
QStyle::SE_TabWidgetLayoutItem44親レイアウトにカウントされる領域
QStyle::SE_ToolBoxTabContents15ツールボックスタブのアイコンとラベルの領域
QStyle::SE_ToolButtonLayoutItem41親レイアウトでカウントされる領域
QStyle::SE_ItemViewItemCheckIndicator23ビューアイテムのチェックマークの領域
QStyle::SE_TabBarTearIndicator24非推奨。代わりに SE_TabBarTearIndicatorLeft を使用してください。
QStyle::SE_TabBarTearIndicatorLeftSE_TabBarTearIndicatorスクロール矢印付きタブバーの左側のティアインジケータの領域です。
QStyle::SE_TabBarTearIndicatorRight55スクロール矢印付きタブバーの右側のティアインジケータの領域。
QStyle::SE_TabBarScrollLeftButton53スクロールボタン付きタブバーの左スクロールボタン用領域
QStyle::SE_TabBarScrollRightButton54スクロールボタン付きタブバーの右スクロールボタン用領域
QStyle::SE_TreeViewDisclosureItem25ツリーブランチ内の実際の開示項目の領域。
QStyle::SE_GroupBoxLayoutItem43親レイアウトにカウントされる領域
QStyle::SE_CustomBase0xf0000000カスタムサブ要素の基準値。カスタム値はこの値より大きくなければなりません。
QStyle::SE_DockWidgetFloatButton29ドックウィジェットのフロートボタン。
QStyle::SE_DockWidgetTitleBarText30ドックウィジェットのタイトルのテキスト境界。
QStyle::SE_DockWidgetCloseButton28ドックウィジェットのクローズボタン。
QStyle::SE_DockWidgetIcon31ドックウィジェットのアイコン
QStyle::SE_ComboBoxLayoutItem33親レイアウトにカウントされる領域
QStyle::SE_ItemViewItemDecoration45ビューアイテムの装飾(アイコン)の領域。
QStyle::SE_ItemViewItemText46ビュー項目のテキストの領域
QStyle::SE_ItemViewItemFocusRect47ビューアイテムのフォーカス矩形領域
QStyle::SE_TabBarTabLeftButton48タブバーのタブの左側にあるウィジェットの領域
QStyle::SE_TabBarTabRightButton49タブバーのタブの右側のウィジェットの領域
QStyle::SE_TabBarTabText50タブバーのタブのテキストの領域
QStyle::SE_ToolBarHandle52ツールバーのハンドルの領域

subElementRect()も参照

メンバー関数ドキュメント

QStyle::QStyle()

スタイル オブジェクトを構築します。

[virtual noexcept] QStyle::~QStyle()

スタイルオブジェクトを破棄します。

[static] QRect QStyle::alignedRect(Qt::LayoutDirection direction, Qt::Alignment alignment, const QSize &size, const QRect &rectangle)

指定されたalignmentdirection に従って、指定されたrectangle にアライメントされた、指定されたsize の新しい矩形を返す。

int QStyle::combinedLayoutSpacing(QSizePolicy::ControlTypes controls1, QSizePolicy::ControlTypes controls2, Qt::Orientation orientation, QStyleOption *option = nullptr, QWidget *widget = nullptr) const

controls1controls2 の間で使用する間隔を返します。orientation は、コントロールを横に並べるか、縦に重ねるかを指定します。option パラメータを使用して、親ウィジェットに関する追加情報を渡すことができます。widget パラメータはオプションで、optionnullptr の場合にも使用できます。

controls1 および が 0 個以上の の OR 組み合わせである場合にも使用できます。controls2 control types

この関数はレイアウトシステムから呼び出されます。この関数は、PM_LayoutHorizontalSpacing またはPM_LayoutVerticalSpacing が負の値を返す場合にのみ使用される。

layoutSpacing()も参照

[pure virtual] void QStyle::drawComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget = nullptr) const

option で指定されたスタイルオプションで、指定されたpainter を使用して、指定されたcontrol を描画します。

widget 引数はオプションであり、コントロールを描画する際の補助として使用することができる。

option パラメータはQStyleOptionComplex オブジェクトへのポインタであり、qstyleoption_cast() 関数を使用して正しいサブクラスにキャストすることができる。指定されたoptionrect メンバは論理座標でなければならないことに注意。この関数を再実装する場合は、drawPrimitive ()またはdrawControl ()関数を呼び出す前に、visualRect ()を使用して論理座標をスクリーン座標に変更する必要があります。

下の表は、複合制御要素と、それに関連するスタイル・オプションのサブクラスの一覧です。スタイル・オプションには、描画時に使用されるstyle flags を保持するQStyleOption::state を含め、コントロールの描画に必要なすべてのパラメータが含まれています。また、この表では、与えられたoption を適切なサブクラスにキャストするときに設定されるフラグについても説明しています。

複雑なコントロールQStyleOptionComplex サブクラススタイルフラグ備考
CC_SpinBoxQStyleOptionSpinBoxState_Enabledスピンボックスが有効な場合に設定されます。
State_HasFocusスピンボックスに入力フォーカスがあるかどうかを設定します。
CC_ComboBoxQStyleOptionComboBoxState_Enabledコンボボックスが有効かどうかを設定します。
State_HasFocusコンボボックスに入力フォーカスがあるかどうかを設定します。
CC_ScrollBarQStyleOptionSliderState_Enabledスクロールバーが有効かどうかを設定します。
State_HasFocusスクロールバーに入力フォーカスがあるかどうかを設定します。
CC_SliderQStyleOptionSliderState_Enabledスライダーが有効かどうかを設定します。
State_HasFocusスライダーに入力フォーカスがあるかどうかを設定します。
CC_DialQStyleOptionSliderState_Enabledダイヤルが有効かどうかを設定します。
State_HasFocusダイヤルに入力フォーカスがあるかどうかを設定します。
CC_ToolButtonQStyleOptionToolButtonState_Enabledツールボタンが有効かどうかを設定します。
State_HasFocusツールボタンに入力フォーカスがあるかどうかを設定します。
State_DownArrowツールボタンが押されている(マウスボタンまたはスペースバーが押されている)場合に設定します。
State_Onツール・ボタンがトグル・ボタンで、トグル・オンかどうかを設定します。
State_AutoRaiseツールボタンの自動上昇が有効な場合に設定します。
State_Raised自動レイズが有効になっているとき、ボタンがダウンしておらず、オンになっておらず、マウスを含んでいない場合に設定します。
CC_TitleBarQStyleOptionTitleBarState_Enabledタイトルバーが有効な場合に設定します。

drawPrimitive() およびdrawControl()も参照

[pure virtual] void QStyle::drawControl(QStyle::ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget = nullptr) const

option で指定されたスタイルオプションで、指定されたpainter で指定されたelement を描画します。

widget 引数はオプションであり、コントロールを描画する際の補助として使用することができる。option パラメータはQStyleOption オブジェクトへのポインタであり、qstyleoption_cast() 関数を使用して適切なサブクラスにキャストすることができる。

下の表は、コントロール要素とそれに関連するスタイル・オプションのサブクラスの一覧です。スタイル・オプションには、描画時に使用されるスタイル・フラグを保持するQStyleOption::state を含め、コントロールの描画に必要なすべてのパラメータが含まれています。この表では、与えられたオプションを適切なサブクラスにキャストするときに設定されるフラグについても説明しています。

コントロールエレメントがここにリストされていない場合は、プレーンQStyleOption オブジェクトを使用しているためであることに注意してください。

制御要素QStyleOption サブクラススタイル フラグ備考
CE_MenuItem,CE_MenuBarItemQStyleOptionMenuItemState_Selectedメニュー項目は現在選択されている項目です。
State_Enabledこの項目は有効です。
State_DownArrowスクロールダウン矢印が描画されることを示す。
State_UpArrowスクロールアップ矢印が描画されることを示す
State_HasFocusメニューバーに入力フォーカスがある場合に設定する。
CE_PushButton CE_PushButtonBevelCE_PushButtonLabelQStyleOptionButtonState_Enabledボタンが有効かどうかを設定する。
State_HasFocusボタンに入力フォーカスがあるかどうかを設定する。
State_Raisedボタンが下でもなく、オンでもなく、フラットでもない場合に設定します。
State_Onボタンがトグルボタンで、トグルでオンになっている場合に設定します。
State_Sunkenボタンがダウンしている(つまり、マウスボタンまたはスペースバーがボタン上で押されている)場合に設定します。
CE_RadioButton CE_RadioButtonLabel, 、CE_CheckBox CE_CheckBoxLabelQStyleOptionButtonState_Enabledボタンが有効かどうかを設定します。
State_HasFocusボタンに入力フォーカスがあるかどうかを設定します。
State_Onボタンがチェックされているかどうかを設定します。
State_Offボタンがチェックされていないかどうかを設定します。
State_NoChangeボタンがNoChange状態かどうかを設定します。
State_Sunkenボタンがダウンしている(つまり、マウスボタンまたはスペースバーがボタン上で押されている)場合に設定します。
CE_ProgressBarContents CE_ProgressBarLabelCE_ProgressBarGrooveQStyleOptionProgressBarState_Enabledプログレスバーが有効かどうかを設定します。
State_HasFocusプログレス・バーに入力フォーカスがあるかどうかを設定します。
CE_Header,CE_HeaderSectionCE_HeaderLabelQStyleOptionHeader
CE_TabBarTab CE_TabBarTabShapeCE_TabBarTabLabelQStyleOptionTabState_Enabledタブバーが有効かどうかを設定します。
State_Selectedタブバーは現在選択されているタブバーです。
State_HasFocusタブバーのタブに入力フォーカスがあるかどうかを設定します。
CE_ToolButtonLabelQStyleOptionToolButtonState_Enabledツールボタンが有効かどうかを設定します。
State_HasFocusツールボタンに入力フォーカスがあるかどうかを設定します。
State_Sunkenツールボタンが押されている(マウスボタンまたはスペースバーが押されている)場合に設定します。
State_Onツール・ボタンがトグル・ボタンで、トグル・オンかどうかを設定します。
State_AutoRaiseツールボタンの自動上昇が有効になっているかどうかを設定します。
State_MouseOverマウスポインタがツールボタンの上にある場合に設定します。
State_Raisedボタンが下になく、オンになっていない場合に設定します。
CE_ToolBoxTabQStyleOptionToolBoxState_Selectedタブは現在選択されているタブです。
CE_HeaderSectionQStyleOptionHeaderState_Sunkenセクションが押されていることを示します。
State_UpArrowソートインジケータが上を向いていることを示す。
State_DownArrowソート・インジケータが下を向いていることを示す。

drawPrimitive() およびdrawComplexControl()参照のこと。

[virtual] void QStyle::drawItemPixmap(QPainter *painter, const QRect &rectangle, int alignment, const QPixmap &pixmap) const

指定されたrectangle に、指定されたalignment に従って、指定されたpainter を用いて、指定されたpixmap を描画します。

drawItemText()も参照

[virtual] void QStyle::drawItemText(QPainter *painter, const QRect &rectangle, int alignment, const QPalette &palette, bool enabled, const QString &text, QPalette::ColorRole textRole = QPalette::NoRole) const

与えられたpainterpalette を使って、指定されたrectangle に与えられたtext を描画する。

テキストはペインターのペンを使用して描画され、指定されたalignment に従って整列および折り返されます。明示的にtextRole が指定された場合、テキストはpalette の指定された役割の色を使って描画されます。enabled パラメータは、項目が有効かどうかを示します。この関数を再実装する場合、enabled パラメータは、項目がどのように描画されるかに影響するはずです。

Qt::Alignment およびdrawItemPixmap()も参照して ください。

[pure virtual] void QStyle::drawPrimitive(QStyle::PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget = nullptr) const

与えられたプリミティブelement を、option で指定されたスタイルオプションを使用して、与えられたpainter で描画します。

widget 引数はオプションで、プリミティブ要素の描画を補助するウィジェットを含めることができます。

以下の表は、プリミティブ要素と、それらに関連するスタイルオプションサブクラスの一覧です。スタイルオプションには、描画時に使用されるスタイルフラグを保持するQStyleOption::state を含む、要素の描画に必要なすべてのパラメータが含まれています。この表は、与えられたオプションを適切なサブクラスにキャストするときに設定されるフラグについても説明しています。

プリミティブ要素がここにリストされていない場合、それはプレーンQStyleOption オブジェクトを使用しているためであることに注意してください。

プリミティブ要素QStyleOption サブクラススタイル フラグ備考
PE_FrameFocusRectQStyleOptionFocusRectState_FocusAtBorderフォーカスが境界にあるか、ウィジェットの内側にあるか。
PE_IndicatorCheckBoxQStyleOptionButtonState_NoChangeトライステート "チェックボックスを示します。
State_Onインジケータがチェックされていることを示します。
PE_IndicatorRadioButtonQStyleOptionButtonState_Onラジオボタンが選択されていることを示す。
State_NoChangeトライステート "コントローラを示す。
State_Enabledコントローラが有効であることを示す。
PE_IndicatorBranchQStyleOptionState_Childrenツリーを展開して子アイテムを表示するためのコントロールが描画されることを示す。
State_Item子項目を表示する)水平分岐を描画することを示す。
State_Openツリーの枝が展開されることを示す。
State_Sibling(兄弟項目を表示する) 垂直線を描画することを示す。
PE_IndicatorHeaderArrowQStyleOptionHeaderState_UpArrow矢印が上向きであることを示す。
PE_FrameGroupBox PE_Frame, , , 、PE_FrameLineEdit PE_FrameMenu PE_FrameDockWidget PE_FrameWindowQStyleOptionFrameState_SunkenFrame が沈んでいることを示します。
PE_IndicatorToolBarHandleQStyleOptionState_Horizontalウィンドウハンドルが垂直ではなく水平であることを示します。
PE_IndicatorSpinPlus PE_IndicatorSpinMinus, , 、PE_IndicatorSpinUp PE_IndicatorSpinDownQStyleOptionSpinBoxState_Sunkenボタンが押されていることを示します。
PE_PanelButtonCommandQStyleOptionButtonState_Enabledボタンが有効な場合に設定します。
State_HasFocusボタンに入力フォーカスがある場合に設定します。
State_Raisedボタンが下でもなく、オンでもなく、フラットでもない場合に設定します。
State_Onボタンがトグルボタンで、トグルでオンになっている場合に設定します。
State_Sunkenボタンがダウンしている(すなわち、マウスボタンまたはスペースバーがボタン上で押されている)場合に設定します。

drawComplexControl() およびdrawControl()も参照

[pure virtual] QPixmap QStyle::generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap, const QStyleOption *option) const

指定されたiconMode に適合するようにスタイルされ、option で指定されたパレットを考慮した、与えられたpixmap のコピーを返します。

option パラメータには追加情報を渡すことができますが、パレットを含める必要があります。

すべての pixmap が適合するわけではないことに注意してください。

QIconも参照してください

[pure virtual] QStyle::SubControl QStyle::hitTestComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, const QPoint &position, const QWidget *widget = nullptr) const

指定された複合体control 内の指定されたposition にあるサブコントロールを返します (option で指定されたスタイルオプション付き)。

position はスクリーン座標で表現されることに注意。

option 引数は、QStyleOptionComplex オブジェクト(またはそのサブクラスの1つ)へのポインタである。このオブジェクトは、qstyleoption_cast() 関数を使用して適切な型にキャストすることができる。詳細はdrawComplexControl ()を参照。widget 引数はオプションで、関数に追加情報を含めることができる。

drawComplexControl() およびsubControlRect()も参照

[virtual] QRect QStyle::itemPixmapRect(const QRect &rectangle, int alignment, const QPixmap &pixmap) const

定義されたalignment に従って、指定されたpixmap を描画する、与えられたrectangle 内の領域を返す。

[virtual] QRect QStyle::itemTextRect(const QFontMetrics &metrics, const QRect &rectangle, int alignment, bool enabled, const QString &text) const

指定されたフォントmetricsalignment に従って、指定されたtext を描画する、指定されたrectangle 内の領域を返す。enabled パラメータは、関連する項目が有効かどうかを示す。

指定 さ れたrectangle が、text を描画す る ために必要な領域 よ り も 大 き い と き は、 返 さ れ る 矩形は、 指定 さ れたalignment に従っ てrectangle 内でオ フ セ ッ ト さ れます。た と えば、alignmentQt::AlignCenter であれば、 返 さ れ る 矩形はrectangle 内の中央に配置 さ れます。 与えられたrectangle が必要な領域よ り も小さければ、 返 さ れ る 矩形は、text を描画す る ために充分な大き さ の最小の矩形にな り ます。

Qt::Alignmentも参照してください

[pure virtual] int QStyle::layoutSpacing(QSizePolicy::ControlType control1, QSizePolicy::ControlType control2, Qt::Orientation orientation, const QStyleOption *option = nullptr, const QWidget *widget = nullptr) const

control1control2 の間で使用する間隔を返します。orientation は、コントロールを横に並べるか、縦に重ねるかを指定します。option パラメータを使用して、親ウィジェットに関する追加情報を渡すことができます。widget パラメータはオプションで、optionnullptr の場合にも使用できます。

この関数はレイアウトシステムによって呼び出されます。PM_LayoutHorizontalSpacing またはPM_LayoutVerticalSpacing が負の値を返した場合のみ使用されます。

combinedLayoutSpacing()も参照してください

[since 6.1] QString QStyle::name() const

スタイルの名前を返します。

この値は、QStyleFactory::create ()でスタイルを作成する際に使用できます。

この関数は Qt 6.1 で導入されました。

QStyleFactory::create()も参照してください

[pure virtual] int QStyle::pixelMetric(QStyle::PixelMetric metric, const QStyleOption *option = nullptr, const QWidget *widget = nullptr) const

与えられたピクセルmetric の値を返す。

指定されたoptionwidget は、メトリックの計算に使用できます。option は、qstyleoption_cast() 関数を使用して適切な型にキャストできます。option を使用できる PixelMetrics でも、 が 0 になる場合があることに注意してください。option の適切なキャストについては、以下の表を参照してください:

ピクセル メトリックには、ウィジェットから呼び出されるものと、スタイルによって内部的にのみ呼び出されるものがあります。メトリックがウィジェットから呼び出されない場合、それを使用するかどうかはスタイル作成者の判断によります。スタイルによっては、これが適切でない場合もあります。

[virtual] void QStyle::polish(QWidget *widget)

与えられたwidget の外観を初期化します。

この関数は、ウィジェットが完全に作成された後、初めて表示される直前のある時点で、すべてのウィジェットに対して呼び出されます。

デフォルトの実装は何もしないことに注意してください。この関数の妥当なアクションは、ウィジェットのQWidget::setBackgroundMode()関数を呼び出すことです。例えば、ジオメトリを設定するためにこの関数を使用しないでください。この関数を再実装することで、ウィジェットの外観を変更できるバックドアを提供できますが、Qt のスタイルエンジンでは、この関数を実装する必要はほとんどありません。代わりに、drawItemPixmap(),drawItemText(),drawPrimitive() などを再実装してください。

QWidget::inherits() 関数は、クラス固有のカスタマイズを可能にするのに十分な情報を提供するかもしれません。しかし、新しいQStyle サブクラスは、現在および将来のすべてのウィジェットで合理的に動作することが期待されているため、ハードコードによるカスタマイズの使用は制限されることが推奨されます。

unpolish()も参照してください

[virtual] void QStyle::polish(QApplication *application)

これはオーバーロードされた関数です。

与えられたapplication オブジェクトの後期初期化。

[virtual] void QStyle::polish(QPalette &palette)

これはオーバーロードされた関数です。

カラーパレットに関するスタイル固有の要件 (もしあれば) に従ってpalette を変更します。

QPalette およびQApplication::setPalette()も参照してください

const QStyle *QStyle::proxy() const

この関数は、このスタイルの現在のプロキシを返します。デフォルトでは、ほとんどのスタイルは自分自身を返します。しかし、プロキシ スタイルが使用されている場合、スタイルがそのプロキシにコールバックすることを許可します。

[pure virtual] QSize QStyle::sizeFromContents(QStyle::ContentsType type, const QStyleOption *option, const QSize &contentsSize, const QWidget *widget = nullptr) const

指定されたcontentsSize に基づき、指定されたoptiontype で記述された要素のサイズを返す。

引数option は、QStyleOption またはそのサブクラスの1つへのポインタである。option は、qstyleoption_cast() 関数を使用して適切な型にキャストすることができる。widget はオプションの引数で、サイズの計算に使用する追加情報を含めることができる。

option の適切なキャストについては、以下の表を参照してください:

ContentsType およびQStyleOptionも参照して ください。

[static] int QStyle::sliderPositionFromValue(int min, int max, int logicalValue, int span, bool upsideDown = false)

与えられたlogicalValue をピクセル位置に変換する。min パラメータは 0 にマップされ、maxspan にマップされ、その他の値はその中間に均等に分配される。

この関数は、span が 4096 未満であれば、オーバーフローすることなく整数範囲全体を扱うことができます。

デフォルトでは、この関数は最大値が横長のアイテムの場合は右側、縦長のアイテムの場合は下側にあると仮定します。この動作を逆にするには、upsideDown パラメータを true に設定する。

sliderValueFromPosition()も参照

[static] int QStyle::sliderValueFromPosition(int min, int max, int position, int span, bool upsideDown = false)

与えられたピクセルposition を論理値に変換する。0 はmin パラメータにマップされ、spanmax にマップされ、その他の値はその中間に均等に分配されます。

この関数は、オーバーフローすることなく整数範囲全体を扱うことができます。

デフォルトでは、この関数は最大値が横長のアイテムでは右側、縦長のアイテムでは下側にあると仮定します。この動作を逆にするには、upsideDown パラメータを true に設定します。

sliderPositionFromValue()も参照

[pure virtual] QIcon QStyle::standardIcon(QStyle::StandardPixmap standardIcon, const QStyleOption *option = nullptr, const QWidget *widget = nullptr) const

与えられたstandardIcon のアイコンを返す。

standardIcon は標準的な pixmap で、既存の GUI スタイルやガイドラインに従うことができます。option 引数は、適切なアイコンを定義するときに必要な追加情報を渡すために使用することができます。widget 引数はオプションで、アイコンの決定を助けるために使用することもできる。

[virtual] QPalette QStyle::standardPalette() const

スタイルの標準パレットを返します。

システム カラーをサポートするシステムでは、スタイルの標準パレットは使用されないことに注意してください。特に、Windows VistaとMacのスタイルは標準パレットを使用せず、ネイティブのテーマ エンジンを使用します。これらのスタイルでは、QApplication::setPalette ()でパレットを設定すべきではありません。

QApplication::setPalette()も参照

[pure virtual] int QStyle::styleHint(QStyle::StyleHint hint, const QStyleOption *option = nullptr, const QWidget *widget = nullptr, QStyleHintReturn *returnData = nullptr) const

指定されたスタイルoption によって記述された、指定されたwidget の指定されたスタイルhint を表す整数を返します。

returnData は、クエリ・ウィジェットが styleHint() が返す整数値よりも詳細なデータを必要とする場合に使用されます。詳細は クラスの説明を参照してください。QStyleHintReturn

[pure virtual] QRect QStyle::subControlRect(QStyle::ComplexControl control, const QStyleOptionComplex *option, QStyle::SubControl subControl, const QWidget *widget = nullptr) const

指定 さ れた複合体controloption で指定 さ れた ス タ イルを持つ) の、 指定 さ れたsubControl を含む矩形を返 し ます。矩形はスクリーン座標で定義される。

引数option は、QStyleOptionComplex またはそのサブクラスの1つへのポインタであり、qstyleoption_cast() 関数を使用して適切な型にキャストすることができる。詳しくはdrawComplexControl ()を参照。widget はオプションで、関数の追加情報を含めることができる。

drawComplexControl()も参照

[pure virtual] QRect QStyle::subElementRect(QStyle::SubElement element, const QStyleOption *option, const QWidget *widget = nullptr) const

提供されたスタイルoption に記述された、与えられたelement のサブ領域を返します。返される矩形はスクリーン座標で定義されます。

引数widget はオプションで、領域を決定するために使用することができます。QStyleOption オブジェクトは、qstyleoption_cast() 関数を使用して適切な型にキャストすることができます。option の適切なキャストについては、以下の表を参照してください:

[virtual] void QStyle::unpolish(QWidget *widget)

与えられたwidget の外観を初期化しない。

この関数はpolish() と対になります。スタイルが動的に変更されるたびに、ポリッシュされたウィジェットごとに呼び出されます。新しいスタイルが設定を再びポリッシュする前に、以前のスタイルは設定をアンポリッシュしなければなりません。

unpolish() は、ウィジェットが破棄された場合にのみ呼び出されることに注意してください。例えば、UI からウィジェットを削除してキャッシュし、スタイルが変更された後に再度挿入する場合などです。

polish()も参照してください

[virtual] void QStyle::unpolish(QApplication *application)

これはオーバーロードされた関数である。

与えられたapplication を初期化しない。

[static] Qt::Alignment QStyle::visualAlignment(Qt::LayoutDirection direction, Qt::Alignment alignment)

Qt::AlignAbsolute のないQt::AlignLeft またはQt::AlignRightalignment を、レイアウトdirection に従ってQt::AlignAbsolute のあるQt::AlignLeft またはQt::AlignRight に変換する。他のアライメントフラグは変更されません。

水平アライメントが指定されていない場合、この関数は与えられたレイアウトのデフォルトアライメントdirection を返します。

QWidget::layoutDirection

[static] QPoint QStyle::visualPos(Qt::LayoutDirection direction, const QRect &boundingRectangle, const QPoint &logicalPosition)

与えられたlogicalPosition を、指定されたdirection に基づいてスクリーン座標に変換して返す。boundingRectangle は、変換を実行するときに使用されます。

QWidget::layoutDirectionも参照してください

[static] QRect QStyle::visualRect(Qt::LayoutDirection direction, const QRect &boundingRectangle, const QRect &logicalRectangle)

与えられたlogicalRectangle を、指定されたdirection に基づいてスクリーン座標に変換して返す。変換を行う際にはboundingRectangle が使用される。

この関数は、右から左へのデスクトップをサポートするために提供され、通常、subControlRect() 関数の実装で使用されます。

QWidget::layoutDirectionも参照のこと

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