前言:
這一篇文章需要具備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 ...