如何獲取qt控制項的子控制項

2021-10-07 03:18:24 字數 773 閱讀 7881

我們知道,所有的qt控制項都繼承自qobject,而qobject有乙個屬性叫做objectname。我們可以利用這個屬性。

查詢物件的方法,可以利用findchild()和fildchildren()。函式原型如下:

t qobject::findchild(const qstring &name = qstring(), qt::findchildoptions options = qt::findchildrenrecursively) const

qlist qobject::findchildren(const qstring &name = qstring(), qt::findchildoptions options = qt::findchildrenrecursively) const

具體使用方式,可通過qt助手檢視。

示例:

//獲取ui->widget_4的所有型別為qpushbutton的子控制項,並且遍歷遍歷,列印顯示控制項文字,和控制項名

qlist> buttons = ui-

>widget_4-

>findchildren>()

;foreach

(auto btn, buttons)

//獲取 ui->widget_4的子控制項中名為「btnfilemng」型別為qpushbottn的控制項。

qpushbutton* btn = ui-

>widget_4-

>findchild>

("btnfilemng"

);

如何獲取控制項座標

一 monkeyrecorder獲取座標 1 啟動monkeyrecorder 首先真機或模擬器連線上電腦 以夜神模擬器為例,cmd輸入adb connect 127.0.0.1 62001 連線成功後,cmd輸入adb devices檢視已連線真機或模擬器裝置的名稱 cmd輸入monkeyrunn...

WPF獲取子 父窗體控制項

獲得父窗體控制項 要獲得控制項類名 當前子控制項名 要查詢父控制項名 要獲得控制項類名 public static t getparentobject dependencyobject obj,string name where t frameworkelement parent visualtre...

Qt的子控制項如何接收主視窗的手勢事件

首先我建了乙個新的qt應用,這個應用有三個類,乙個是qt的mainwindow 另外乙個可以接收手勢的widget,最後是我自己擴充套件的可以接收手勢的button.程式執行後的結果是這樣的 1 我點button,button可以正常處理接收到的手勢 2 我點widget的部分,widget可以接收...