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

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # QExtensionFactory Class Reference ## [[QtDesigner](index.htm) module] 該QExtensionFactory類允許你創建一個工廠,是能夠使Qt Designer中自定義擴展的實例。[More...](#details) 繼承[QObject](qobject.html)和[QAbstractExtensionFactory](qabstractextensionfactory.html)。 ### Methods * `__init__ (self, QExtensionManager?parent?=?None)` * `QObject createExtension (self, QObject?object, QString?iid, QObject?parent)` * `QObject extension (self, QObject?object, QString?iid)` * `QExtensionManager extensionManager (self)` * * * ## Detailed Description 該QExtensionFactory類允許你創建一個工廠,是能夠使Qt Designer中自定義擴展的實例。 In _Qt Designer_未創建的擴展,直到你需要它們。出于這個原因,實現自定義擴展時,您還必須創建一個QExtensionFactory ,即一個類,它能夠讓你的擴展的一個實例,并使用它注冊_Qt Designer_的[extension manager](qextensionmanager.html)。 該[QExtensionManager](qextensionmanager.html)類提供了擴展的管理設施, Qt Designer中。當一個擴展是必需的, Qt設計的[extension manager](qextensionmanager.html)將通過其所有已注冊的工廠運行要求[QExtensionFactory.createExtension](qextensionfactory.html#createExtension)( )對每一直到第一個是能夠創造一個請求擴展選定對象,被發現。這家工廠將使這個擴展的實例。 有四種類型的可在Qt Designer中的擴展:[QDesignerContainerExtension](qdesignercontainerextension.html),[QDesignerMemberSheetExtension](qdesignermembersheetextension.html),[QDesignerPropertySheetExtension](qdesignerpropertysheetextension.html)和[QDesignerTaskMenuExtension](qdesignertaskmenuextension.html)。 Qt設計器的行為是一樣的具有多頁的容器,一個成員表,屬性表或任務菜單中的延期申請是否相關。 您可以創建一個新的QExtensionFactory和重新實現[QExtensionFactory.createExtension](qextensionfactory.html#createExtension)()函數。例如: ``` [QObject](qobject.html) *ANewExtensionFactory.createExtension([QObject](qobject.html) *object, const [QString](qstring.html) &iid, [QObject](qobject.html) *parent) const { if (iid != Q_TYPEID([QDesignerContainerExtension](qdesignercontainerextension.html))) return 0; if (MyCustomWidget *widget = qobject_cast<MyCustomWidget*> (object)) return new MyContainerExtension(widget, parent); return 0; } ``` 或者您可以使用現有的工廠,擴大[QExtensionFactory.createExtension](qextensionfactory.html#createExtension)( )函數,使工廠能夠創建您的擴展也是如此。例如: ``` [QObject](qobject.html) *AGeneralExtensionFactory.createExtension([QObject](qobject.html) *object, const [QString](qstring.html) &iid, [QObject](qobject.html) *parent) const { MyCustomWidget *widget = qobject_cast<MyCustomWidget*>(object); if (widget && (iid == Q_TYPEID([QDesignerTaskMenuExtension](qdesignertaskmenuextension.html)))) { return new MyTaskMenuExtension(widget, parent); } else if (widget && (iid == Q_TYPEID([QDesignerContainerExtension](qdesignercontainerextension.html)))) { return new MyContainerExtension(widget, parent); } else { return 0; } } ``` 對于使用QExtensionFactory類的完整示例,請參見[Task Menu Extension example](index.htm)。該示例顯示了如何創建一個自定義的widget插件Qt Designer中,以及如何使用[QDesignerTaskMenuExtension](qdesignertaskmenuextension.html)類的自定義項添加到Qt Designer中的任務菜單。 * * * ## Method Documentation ``` QExtensionFactory.__init__ (self, QExtensionManager?parent?=?None) ``` 該_parent_的說法,如果不是沒有,原因_self_通過Qt的,而不是PyQt的擁有。 構造一個擴展工廠給定的_parent_。 ``` QObject QExtensionFactory.createExtension (self, QObject?object, QString?iid, QObject?parent) ``` [ 該_parent_的說法,如果不是沒有,原因_self_通過Qt的,而不是PyQt的擁有。 創建由指定的延伸_iid_對于給定的_object_。擴展對象為指定的子創建_parent_。 ](qobject.html) [**See also**](qobject.html) [extension](qextensionfactory.html#extension)( ) 。 ``` QObject QExtensionFactory.extension (self, QObject?object, QString?iid) ``` [](qobject.html) [從重新實現](qobject.html)[QAbstractExtensionFactory.extension](qabstractextensionfactory.html#extension)( ) 。 返回由指定的擴展名_iid_對于給定的_object_。 **See also** [createExtension](qextensionfactory.html#createExtension)( ) 。 ``` QExtensionManager QExtensionFactory.extensionManager (self) ``` [ 返回擴展工廠的擴展管理器。 ](qextensionmanager.html)
                  <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>

                              哎呀哎呀视频在线观看