2016-07-20 41 views
1

我有一個通過拖放部分創建的QVBoxLayout。 它在運行時我插入一些小部件與命令如何循環遍歷QVBoxLayout中的所有小部件

ui-> verticalLayout-> insertWidget()/ /使用適當的選項。

我插入的所有小部件都是相同的類型/類。

我想循環瀏覽插入的小部件,以便對它們執行一些操作。

我想這是非常簡單的,但似乎無法找出如何...

謝謝大家!

回答

1

您可以使用QLayout::itemAt()循環佈局的項目。然後使用QLayoutItem::widget()獲得小部件:

for(int i = 0; i < layout->count(); ++i) 
{ 
    do_something(
     layout->itemAt(i)->widget() 
    ); 
} 

注意widget()可能會返回一個空指針。

+1

我知道我可能會問很多,但你能告訴我一些示例代碼嗎? – Wing

+0

它應該是這樣的: for(int i = 0; i < layout-> count(); ++ i) do_something(layout-> itemAt(i) - > widget()); 注意widget()方法可能會返回一個空指針。 – wasthishelpful

+0

非常感謝! 你真的很有幫助! – Wing