Q100098: UI で独自のカスタム タブを作成する方法

フォローする

まとめ

この記事では、独自のカスタム タイプのタブを作成し、 Katanaのメインタブメニューからそれにアクセスする方法を説明します。

詳しくは

カスタム タブを作成するには、次のことを行う必要があります。
1. 独自のウィジェットのレイアウトを持つUI4.Tabs.BaseTabから派生したクラスを定義します。
2. そのクラスを「KatanaPanel」タイプのプラグインとして登録します。
上記を説明する Python の例を次に示します。
from Katana import UI4
from PyQt5 import QtWidgets

class MyCustomTab(UI4.Tabs.BaseTab):

    def __init__(self, parent):
        UI4.Tabs.BaseTab.__init__(self, parent)

       label = QtWidgets.QLabel('This is MyCustomTab')
        label.setObjectName('label')
        label.setStyleSheet('font-weight: bold; '
                            'font-size: 18pt; '
                            'font-style: italic;')

       hLayout = QtWidgets.QHBoxLayout()
        hLayout.setObjectName('hLayout')
        hLayout.addStretch()
        hLayout.addWidget(label)
        hLayout.addStretch()

       vLayout = QtWidgets.QVBoxLayout()
        vLayout.setObjectName('vLayout')
        vLayout.addLayout(hLayout)

        self.setLayout(vLayout)

PluginRegistry = [
    ('KatanaPanel', 2.0, 'MyCustomTab', MyCustomTab),
    ('KatanaPanel', 2.0, ' Custom/MyCustomTab ', MyCustomTab),
]
登録

UI でタブの種類を確認するには、Python コードを .py ファイルに保存し、これを$KATANA_RESOURCES環境変数にパスが追加されているディレクトリのTabsサブフォルダー内に配置します。

この方法で登録されたタブ タイプは、 Katanaのメイン メニュー バーの[タブ]メニューと、 Katanaレイアウトの各ペインの [タブの追加]メニューに表示されます。
注: Custom/MyCustomTab」などのパスに似たタブ タイプ名を使用して、これらのメニュー内のタブ タイプをグループ化できます。ただし、 Katana 3.0v1 以降では、タブもタブ プラグインの検索パスごとに個別のセクションに編成されることに注意してください。これは、異なるリソース パスからロードされたタブ プラグインが同じサブメニューの下にグループ化されないことを意味します。

すべてのカスタムタブフォルダーは、固有のセクションにグループ化されます。これらのセクションにはタイトルを割り当てることができ、 KATANA _RESOURCESディレクトリ内のTabsフォルダーにseparatorTitle.txtという名前のファイルを配置することでカスタマイズできます。たとえば、区切りタイトルとして「API Example Tabs」を使用する場合は、単にseparatorTitle.txtに「API Example Tabs」と入力すると、結果は次のようになります。

mceclip1.png
注:複数のカスタムタブセクションを作成するには、複数の一意のディレクトリをKATANA _RESOURCESに割り当て、それぞれに独自のタブフォルダを持たせる必要があります Katana Tabフォルダーのみを検索し、 Tabフォルダーごとに 1 つのseparatorTitle.txtのみを受け入れ、サブフォルダーを識別できないため、これが必要です。 KATANA _RESOURCESへの新しいパスの追加の詳細については、 Katana Resourcesインストール ガイドを参照してください。

    私たちはそれを聞いて申し訳ございません

    理由をお聞かせください