qt布局呼叫自定義函式 Houdini 自定義UI

2021-10-12 20:59:21 字數 2521 閱讀 1858

前言:

這一篇文章需要具備houdini的基礎知識,和houdini python模組的運用,還有python的基礎知識,和pyside2庫或者pyqt5庫的基本運用,最後和一些python常用庫的運用。

以下是我給的第乙個houdini的自定義ui的**框架

#匯入gui程式設計必須的庫(pyside2)from pyside2.qtwidgets import *from pyside2.qtcore import *#匯入常用庫 os sys houimport sysimport osimport hou
下面開始初始化houdini的工作節點,我這裡是直接把需要建立和修改引數的節點是全部定義到了mainhoudininode()這個函式裡面去,這個函式只適用於初始化需要的節點,把他打成乙個函式更加方便模組化的去管理**,這裡只是給出了乙個模板,可以具體內容可以更具需求自己設定。

#初始化工作節點def mainhoudininode():  #初始化houdini節點def function():  #定義houdini節點函式
從下的這一塊的**的重心就是設定ui介面的模組了,這裡我沒有刪減**,這就是定義了乙個類,這個類繼承於qwidget,在這個類裡設定ui介面,方便後面例項化物件,並設定一些互動功能之類的,比如按下按鈕後的槽方法,槽方法設定ui介面的一些ui的widget的引數和狀態,然後讀取之前定義的function,執行一系列的操作等等,該處的擴充套件內容也比較的多,可以根據需求定製。

class mainui(qwidget):    def __init__(self):        super(mainui, self).__init__()        self.setwindowflag(qt.windowstaysontophint)    #置頂        self.setwindowtitle('文字')        self.initui()    def initui(self):        layout = qformlayout()        layout_v = qvboxlayout()        # 設定filepath 和 button 布局        self.filepath = qlineedit()        self.filepath.setdisabled(true)        self.filepath.resize(500, 10)        self.loadfile_btn = qpushbutton('文字')        layout.addrow(self.loadfile_btn, self.filepath)        # 加入標籤        self.converlabel = qlabel()        self.converlabel.settext('文字')        layout.addrow(self.converlabel)        # 增加轉化後的file        self.outlineedit = qlineedit()        self.outlineedit.setplaceholdertext('請輸入轉化檔名,例如輸入outputcsv,最後會轉化成outputcsv.csv')        layout.addrow('文字', self.outlineedit)        # 增加執行button        self.run_button = qpushbutton('文字')        layout_v.additem(layout)        layout_v.addwidget(self.run_button)        self.setlayout(layout_v)        # 設定按鈕事件        self.loadfile_btn.clicked.connect(self.callbackfunc1)        outname = self.outlineedit.text()        self.run_button.clicked.connect(self.callbackfunc2)    def callbackfunc1(self):      pass      #設定槽函式    def callbackfunc2(self):      pass      #設定槽函式
接下來就是主要的執行**的了,我們需要先建立我們的工作節點,

然後建立ui介面,並且將ui介面顯示出來,具體的互動操作我們其實在建立ui類的時候已經定義在函式裡面了。

mainhoudininode()  mianwin = mainui()  mianwin.show()
最後為了方便呼叫可以把它儲存在自定義工具架上,這樣以後點一下就可以直接呼叫了,操作如下:

然後單擊accept。

大概提供乙個建立houdini 的ui的思路和框架,如果大家填完了框架也可以做出自己的ui。

以上是我的houdini自定義ui。

自定義布局

自定義view布局 1.確定每個view的位置和尺寸 2.作用 為繪製和觸控範圍做支援 1.對於繪製 知道自己需要在 繪製。2.對於觸控反饋 知道使用者的點是在 自定義view布局的工作內容 自定義view的工作分為兩個階段 測量階段和布局階段 測量流程 從上到下遞迴呼叫每個view或者viewgr...

自定義函式及函式呼叫

在論壇中,發現有的道友對自定義函式的呼叫存在這以下問題 1 自定義函式宣告 函式呼叫 函式實現概念混淆 2 形參和實參混淆 3 自定義函式引數的傳值方式混淆 傳來傳去都不知道傳的到底是什麼?接下來,我就重點圍繞道友們常見的問題,說一說 1 自定義函式宣告 函式呼叫 函式實現 比如 交換兩個數的值的自...

Qt自定義建構函式mark

qt中帶自定義的建構函式事實上和c 的建構函式一樣,但又有些不同。class data public qmainwindow 建構函式 data data qstring username,qwidget parent qmainwindow parent username name ui new ...