2016-09-13 16 views
0

У меня есть QStackedWidget с QLineEdit и еще несколько других виджетов внутри него. Этот QStackedWidget довольно динамичен - вы можете переместить его в свой макет, щелкнув/перетащив его, изменив его текущий виджет, щелкнув его правой кнопкой мыши и т. Д.PyQt - рисовать прямоугольник за виджетами

Я хотел бы нарисовать простой серый прямоугольник или серый округлый прямоугольник вокруг QStackedWidget, чтобы люди знали, что QLineEdit, на которые они смотрят, важен. Этот рисованный прямоугольник должен иметь возможность следить за QStackedWidget, чтобы он правильно следил за виджетами, когда я перемещаю его в другие места на экране.

Я пробовал несколько подходов до сих пор, но все они были короткими в том или ином отношении или просто не двигались с виджетами. Может ли кто-нибудь показать мне, как?

ответ

1

В зависимости от того, как осуществляется ваш щелчок/перетаскивание, вы просто должны быть в состоянии поместить QStackedWidget внутри другого QFrame, или положить QFrame внутри вашего QStackedWidget и поместить все другие элементы управления внутри QFrame. QFrame Подчеркивание границ вокруг них.

frame = QFrame() 
frame.setFrameStyle(QFrame.StyledPanel) 
frame.setLineWidth(2) 
+0

После небольшого эксперимента, размещение QFrame в QStackedWidget отлично работает, я отмечаю этот ответ как правильный ответ и благодарю вас! – ColinKennedy