Floating QDockWidget resize — изменение размера обработчика/ручки изменения размера на границе

У меня есть простое главное окно Qt с QDockWidget (безрамное окно). Теперь, когда QDockWidget отстыкован, его размер можно изменить, щелкнув его границу и перетащив на новый размер.

Проблема в том, что граница имеет ширину всего 1-2 пикселя и ее почти невозможно уловить на большом экране с высоким разрешением.

Есть ли способ установить размер границы, которую можно захватить, более 1 пикселя? (Я не хочу использовать QSizeGrip)


person goaran    schedule 18.02.2020    source источник


Ответы (2)


Попробуйте:

QDockWidget > QWidget {
    border: 12px solid purple;
}
person TheRight    schedule 18.02.2020
comment
Это только добавляет видимую границу кockWidgetContent, однако ее нельзя использовать для изменения размера виджета. - person goaran; 18.02.2020
comment
Отредактируйте таблицу стилей в главном окне. Это говорит главному окну сделать разделитель 4 пикселя вместо 1. - person TheRight; 18.02.2020
comment
Разделитель в главном окне в порядке, проблема в границе при плавании. - person goaran; 18.02.2020

QDockWidget* dock = new QDockWidget();

dock->setStyleSheet("QDockWidget { margin: 4px; }");

Это установит поле виджета док-станции в 4 пикселя, что соответствует ширине ручки изменения размера по умолчанию, заданной QWidgetResizeHandler set, если только целевой виджет не наследуется от QFrame (QDockWidget нет).

person Ilya    schedule 28.11.2020