<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # QStyleOption Class Reference ## [[QtGui](index.htm) module] 該QStyleOption類存儲所使用的參數[QStyle](qstyle.html)功能。[More...](#details) 通過繼承[QStyleOptionButton](qstyleoptionbutton.html),[QStyleOptionComplex](qstyleoptioncomplex.html),[QStyleOptionDockWidget](qstyleoptiondockwidget.html),[QStyleOptionFocusRect](qstyleoptionfocusrect.html),[QStyleOptionFrame](qstyleoptionframe.html),[QStyleOptionGraphicsItem](qstyleoptiongraphicsitem.html),[QStyleOptionHeader](qstyleoptionheader.html),[QStyleOptionMenuItem](qstyleoptionmenuitem.html),[QStyleOptionProgressBar](qstyleoptionprogressbar.html),[QStyleOptionRubberBand](qstyleoptionrubberband.html),[QStyleOptionTab](qstyleoptiontab.html),[QStyleOptionTabBarBase](qstyleoptiontabbarbase.html),[QStyleOptionTabWidgetFrame](qstyleoptiontabwidgetframe.html),[QStyleOptionToolBar](qstyleoptiontoolbar.html),[QStyleOptionToolBox](qstyleoptiontoolbox.html)和[QStyleOptionViewItem](qstyleoptionviewitem.html)。 ### Types * `enum OptionType { SO_Default, SO_FocusRect, SO_Button, SO_Tab, ..., SO_CustomBase }` * `enum StyleOptionType { Type }` * `enum StyleOptionVersion { Version }` ### Methods * `__init__ (self, int?version?=?QStyleOption.Version, int?type?=?QStyleOption.SO_Default)` * `__init__ (self, QStyleOption?other)` * `init (self, QWidget?w)` * `initFrom (self, QWidget?w)` ### Members * `Qt.LayoutDirection **[direction](qstyleoption.html#direction-var)**` * `QFontMetrics **[fontMetrics](qstyleoption.html#fontMetrics-var)**` * `QPalette **[palette](qstyleoption.html#palette-var)**` * `QRect **[rect](qstyleoption.html#rect-var)**` * `QStyle.State **[state](qstyleoption.html#state-var)**` * `int **[type](qstyleoption.html#type-var)**` * `int **[version](qstyleoption.html#version-var)**` * * * ## Detailed Description 該QStyleOption類存儲所使用的參數[QStyle](qstyle.html)功能。 QStyleOption及其子類包含的所有信息,[QStyle](qstyle.html)功能需要繪制的圖形元素。 出于性能方面的原因,也有一些成員函數和訪問成員變量是直接的(即使用`.` or `-&gt;`操作符)。這種低層次的感覺,使結構簡單的使用,并強調這些只是所用的樣式函數的參數。 的調用者[QStyle](qstyle.html)功能通常在棧上創建QStyleOption對象。這種結合Qt的廣泛使用[implicit sharing](index.htm)對于類型如[QString](qstring.html),[QPalette](qpalette.html)和[QColor](qcolor.html)確保沒有內存分配不必要的發生。 下面的代碼片段顯示了如何使用特定QStyleOption子類來繪制一個按鈕: ``` void MyPushButton.paintEvent([QPaintEvent](qpaintevent.html) *) { [QStyleOptionButton](qstyleoptionbutton.html) option; option.initFrom(this); option.state = isDown() ? [QStyle](qstyle.html).State_Sunken : [QStyle](qstyle.html).State_Raised; if (isDefault()) option.features |= [QStyleOptionButton](qstyleoptionbutton.html).DefaultButton; option.text = text(); option.icon = icon(); [QPainter](qpainter.html) painter(this); style()->drawControl([QStyle](qstyle.html).CE_PushButton, &option, &painter, this); } ``` 在我們的例子中,控制是一個[QStyle.CE_PushButton](qstyle.html#ControlElement-enum),并根據該[QStyle.drawControl](qstyle.html#drawControl)( )文檔對應的類是[QStyleOptionButton](qstyleoptionbutton.html)。 當重新實現[QStyle](qstyle.html)它接受一個QStyleOption參數功能,你經常需要轉換QStyleOption到一個子類。為安全起見,你可以使用[qstyleoption_cast](qstyleoption.html#qstyleoption_cast)( ),以確保該指針的類型是正確的。例如: ``` void MyStyle.drawPrimitive(PrimitiveElement element, const QStyleOption *option, [QPainter](qpainter.html) *painter, const [QWidget](qwidget.html) *widget) { if (element == PE_FrameFocusRect) { const [QStyleOptionFocusRect](qstyleoptionfocusrect.html) *focusRectOption = qstyleoption_cast<const [QStyleOptionFocusRect](qstyleoptionfocusrect.html) *>(option); if (focusRectOption) { // ... } } // ... } ``` 該[qstyleoption_cast](qstyleoption.html#qstyleoption_cast)()函數將返回0,如果該對象,其中`option`點是正確的類型。 舉一個例子展示風格選擇如何使用,請參閱[Styles](index.htm)例子。 * * * ## Type Documentation ``` QStyleOption.OptionType ``` 此枚舉在內部使用[QStyleOption](qstyleoption.html),它的子類,并[qstyleoption_cast](qstyleoption.html#qstyleoption_cast)()來確定的樣式選項的類型。一般來說,你不需要擔心這個,除非你想創建自己的[QStyleOption](qstyleoption.html)子類和你自己的風格。 | Constant | Value | Description | | --- | --- | --- | | `QStyleOption.SO_Button` | `2` | [QStyleOptionButton](qstyleoptionbutton.html) | | `QStyleOption.SO_ComboBox` | ? | [QStyleOptionComboBox](qstyleoptioncombobox.html) | | `QStyleOption.SO_Complex` | `0xf0000` | [QStyleOptionComplex](qstyleoptioncomplex.html) | | `QStyleOption.SO_Default` | `0` | [QStyleOption](qstyleoption.html) | | `QStyleOption.SO_DockWidget` | `10` | [QStyleOptionDockWidget](qstyleoptiondockwidget.html) | | `QStyleOption.SO_FocusRect` | `1` | [QStyleOptionFocusRect](qstyleoptionfocusrect.html) | | `QStyleOption.SO_Frame` | `5` | [QStyleOptionFrame](qstyleoptionframe.html) [QStyleOptionFrameV2](qstyleoptionframev2.html) | | `QStyleOption.SO_GraphicsItem` | `17` | [QStyleOptionGraphicsItem](qstyleoptiongraphicsitem.html) | | `QStyleOption.SO_GroupBox` | ? | [QStyleOptionGroupBox](qstyleoptiongroupbox.html) | | `QStyleOption.SO_Header` | `8` | [QStyleOptionHeader](qstyleoptionheader.html) | | `QStyleOption.SO_MenuItem` | `4` | [QStyleOptionMenuItem](qstyleoptionmenuitem.html) | | `QStyleOption.SO_ProgressBar` | `6` | [QStyleOptionProgressBar](qstyleoptionprogressbar.html) [QStyleOptionProgressBarV2](qstyleoptionprogressbarv2.html) | | `QStyleOption.SO_RubberBand` | `15` | [QStyleOptionRubberBand](qstyleoptionrubberband.html) | | `QStyleOption.SO_SizeGrip` | ? | [QStyleOptionSizeGrip](qstyleoptionsizegrip.html) | | `QStyleOption.SO_Slider` | ? | [QStyleOptionSlider](qstyleoptionslider.html) | | `QStyleOption.SO_SpinBox` | ? | [QStyleOptionSpinBox](qstyleoptionspinbox.html) | | `QStyleOption.SO_Tab` | `3` | [QStyleOptionTab](qstyleoptiontab.html) | | `QStyleOption.SO_TabBarBase` | `14` | [QStyleOptionTabBarBase](qstyleoptiontabbarbase.html) | | `QStyleOption.SO_TabWidgetFrame` | `13` | [QStyleOptionTabWidgetFrame](qstyleoptiontabwidgetframe.html) | | `QStyleOption.SO_TitleBar` | ? | [QStyleOptionTitleBar](qstyleoptiontitlebar.html) | | `QStyleOption.SO_ToolBar` | `16` | [QStyleOptionToolBar](qstyleoptiontoolbar.html) | | `QStyleOption.SO_ToolBox` | `7` | [QStyleOptionToolBox](qstyleoptiontoolbox.html) | | `QStyleOption.SO_ToolButton` | ? | [QStyleOptionToolButton](qstyleoptiontoolbutton.html) | | `QStyleOption.SO_ViewItem` | `12` | [QStyleOptionViewItem](qstyleoptionviewitem.html)(在采訪中使用) | 下面的值用于自定義控件: | Constant | Value | Description | | --- | --- | --- | | `QStyleOption.SO_CustomBase` | `0xf00` | 保留自定義QStyleOptions ;所有自定義的控件的值必須高于這個值 | | `QStyleOption.SO_ComplexCustomBase` | `0xf000000` | 保留自定義QStyleOptions ;所有自定義復雜的控件的值必須高于這個值 | 一些樣式選項用于各種[Qt3Support](index.htm)控制: | Constant | Value | Description | | --- | --- | --- | | `QStyleOption.SO_Q3DockWindow` | `9` | [QStyleOptionQ3DockWindow](index.htm) | | `QStyleOption.SO_Q3ListView` | ? | [QStyleOptionQ3ListView](index.htm) | | `QStyleOption.SO_Q3ListViewItem` | `11` | [QStyleOptionQ3ListViewItem](index.htm) | **See also** [type](qstyleoption.html#type-varx)。 ``` QStyleOption.StyleOptionType ``` 此枚舉是用來保存有關樣式選項的類型信息,并定義每個[QStyleOption](qstyleoption.html)子類。 | Constant | Value | Description | | --- | --- | --- | | `QStyleOption.Type` | `SO_Default` | 風格選擇該類型提供([SO_Default](qstyleoption.html#OptionType-enum)這個類) 。 | 該類型在內部使用[QStyleOption](qstyleoption.html),它的子類,并[qstyleoption_cast](qstyleoption.html#qstyleoption_cast)()來確定的樣式選項的類型。一般來說,你不需要擔心這個,除非你想創建自己的[QStyleOption](qstyleoption.html)子類和你自己的風格。 **See also** [StyleOptionVersion](qstyleoption.html#StyleOptionVersion-enum)。 ``` QStyleOption.StyleOptionVersion ``` 此枚舉是用來保存有關樣式選項的版本信息,并定義每個[QStyleOption](qstyleoption.html)子類。 | Constant | Value | Description | | --- | --- | --- | | `QStyleOption.Version` | `1` | 1 | 的版本是由[QStyleOption](qstyleoption.html)子類實現不破壞兼容性擴展。如果你使用[qstyleoption_cast](qstyleoption.html#qstyleoption_cast)( ) ,你通常并不需要檢查它。 **See also** [StyleOptionType](qstyleoption.html#StyleOptionType-enum)。 * * * ## Method Documentation ``` QStyleOption.__init__ (self, int?version?=?QStyleOption.Version, int?type?=?QStyleOption.SO_Default) ``` 構造一個[QStyleOption](qstyleoption.html)用指定的_version_和_type_。 該版本具有沒有特殊含義[QStyleOption](qstyleoption.html)它可以用于由子類不同版本的相同選項類型之間進行區分。 該[state](qstyleoption.html#state-var)成員變量被初始化為[QStyle.State_None](qstyle.html#StateFlag-enum)。 **See also** [version](qstyleoption.html#version-var)和[type](qstyleoption.html#type-varx)。 ``` QStyleOption.__init__ (self, QStyleOption?other) ``` 構造的副本_other_。 ``` QStyleOption.init (self, QWidget?w) ``` ``` QStyleOption.initFrom (self, QWidget?w) ``` 初始化[state](qstyleoption.html#state-var),[direction](qstyleoption.html#direction-var),[rect](qstyleoption.html#rect-var),[palette](qstyleoption.html#palette-var)和[fontMetrics](qstyleoption.html#fontMetrics-var)基于所指定的成員變量_widget_。 這是一個方便的功能,成員變量也可以手動初始化。 這個函數是Qt 4.1中引入。 **See also** [QWidget.layoutDirection](qwidget.html#layoutDirection-prop)( )[QWidget.rect](qwidget.html#rect-prop)( )[QWidget.palette](qwidget.html#palette-prop)()和[QWidget.fontMetrics](qwidget.html#fontMetrics)( ) 。 * * * ## Member Documentation ``` Qt.LayoutDirection direction ``` [ 這個變量保存繪制控件中的文本時,應該使用文本布局方向。 ](qt.html#LayoutDirection-enum) [默認情況下,布局方向](qt.html#LayoutDirection-enum)[Qt.LeftToRight](qt.html#LayoutDirection-enum)。 **See also** [initFrom](qstyleoption.html#initFrom)( ) 。 ``` QFontMetrics fontMetrics ``` [ 這個變量保存繪制控件中的文本時,應使用的字體度量。 默認情況下,應用程序的默認字體。 ](qfontmetrics.html) [**See also**](qfontmetrics.html) [initFrom](qstyleoption.html#initFrom)( ) 。 ``` QPalette palette ``` [ 這個變量保存繪畫的控制時,應使用的調色板。 默認情況下,應用程序的默認調色板使用。 ](qpalette.html) [**See also**](qpalette.html) [initFrom](qstyleoption.html#initFrom)( ) 。 ``` QRect rect ``` [ 這個變量保存了應被用于各種計算和畫的面積。 ](qrect.html) [這可以有不同類型的元素不同的含義。例如,對于一](qrect.html)[QStyle.CE_PushButton](qstyle.html#ControlElement-enum)元件便對整個按鈕的矩形區域,而對于一個[QStyle.CE_PushButtonLabel](qstyle.html#ControlElement-enum)元素它也不過為按鈕標籤的區域。 默認值是空的矩形,即用寬度和高度設置為0的矩形。 **See also** [initFrom](qstyleoption.html#initFrom)( ) 。 ``` QStyle.State state ``` [ 這個變量保存所繪制控件時使用的風格標志。 ](index.htm) [缺省值是](index.htm)[QStyle.State_None](qstyle.html#StateFlag-enum)。 **See also** [initFrom](qstyleoption.html#initFrom)( )[QStyle.drawPrimitive](qstyle.html#drawPrimitive)( )[QStyle.drawControl](qstyle.html#drawControl)( )[QStyle.drawComplexControl](qstyle.html#drawComplexControl)()和[QStyle.State](qstyle.html#StateFlag-enum)。 ``` int type ``` ``` int version ``` 這個變量保存樣式選項的版本。 這個值可以由子類用于實現擴展不會破壞兼容性。如果使用[qstyleoption_cast](qstyleoption.html#qstyleoption_cast)( )函數,你通常并不需要檢查它。 默認值是1。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看