2015-06-12 48 views
0

我有一個派生自QFrame的類。我需要通過繼承paintEvent來在QFrame的底部繪製一些東西。這個類是其他類的基類,它將佈局和小部件放在框架上。 我該如何避免派生類將小部件放在我繪製在基類中的底部區域?有沒有辦法將小部件中的可用空間從基類限制到所有派生類,而不讓它們知道?限制QFrame中的可用空間

回答

1

不改變你的架構(這是我的第一個想法),我建議是這樣的:

無效的QWidget :: setContentsMargins(INT左,INT頂部,詮釋權,詮釋 底部)

將小部件內容周圍的邊距設置爲左邊,上部,右側和底部的尺寸爲 。邊距由佈局 系統使用,並且可以由子類用於指定要在 中繪製的區域(例如排除幀)。