想在QWidget里面動態的添加和刪除控件,給QWidget設置了一個布局管理器QVBoxLayout,要刪除控件可以 使用QVBoxLayout::removeWidget(QWidget *w)方法,但是移除之后,那個被移除的控件還顯示在里面。
經過一段時間的實驗,發現光調用這個remove方法還不行,必須在調用之后delete這個被移除的控件,貌似這個是qt為了防止內存泄露所做的保護機制,因為如果調用了remove方法之后,不進行delete的話,那么這個控件就屬於野指針了
想在QWidget里面動態的添加和刪除控件,給QWidget設置了一個布局管理器QVBoxLayout,要刪除控件可以 使用QVBoxLayout::removeWidget(QWidget *w)方法,但是移除之后,那個被移除的控件還顯示在里面。
經過一段時間的實驗,發現光調用這個remove方法還不行,必須在調用之后delete這個被移除的控件,貌似這個是qt為了防止內存泄露所做的保護機制,因為如果調用了remove方法之后,不進行delete的話,那么這個控件就屬於野指針了
本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。