Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: maria123252 от Июнь 15, 2017, 11:08



Название: [РЕШЕНО] Как можно отредактировать titlebar QWidget?
Отправлено: maria123252 от Июнь 15, 2017, 11:08
Здравствуйте!

Имею объекты, наследуемые от QMainWindow,QWidget,QDialog. Нужно, чтобы в заголовке окна была только кнопка "закрыть" и "свернуть". Почитала документацию, но смогла реализовать только, чтоб в заголовке окна была кнопка закрыть.

window_client_mkpu.setWindowFlags(Qt::Window | Qt::CustomizeWindowHint | Qt::WindowTitleHint | Qt::WindowCloseButtonHint | Qt::WindowSystemMenuHint);

Перепробовала другие флаги, но так и не получилось добавить кнопку свернуть.

Помогите, пожалуйста, выставить правильно флаги, чтобы в заголовке окна были только клавиши  "закрыть" и "свернуть".


Название: Re: Как можно отредактировать titlebar QWidget?
Отправлено: mitrich от Июнь 15, 2017, 11:19
Код
C++ (Qt)
setWindowFlags(Qt::WindowTitleHint | Qt::WindowMinimizeButtonHint | Qt::WindowCloseButtonHint);
Под виндой работает.


Название: Re: Как можно отредактировать titlebar QWidget?
Отправлено: kambala от Июнь 15, 2017, 11:20
добавь Qt::WindowMinimizeButtonHint, но кнопка «полный экран» будет видна, хоть и неактивна


Название: Re: Как можно отредактировать titlebar QWidget?
Отправлено: maria123252 от Июнь 15, 2017, 11:25
добавь Qt::WindowMinimizeButtonHint, но кнопка «полный экран» будет видна, хоть и неактивна
хотелось бы от кнопки "полный экран" избавиться вообще


Название: Re: Как можно отредактировать titlebar QWidget?
Отправлено: qate от Июнь 15, 2017, 12:25
очень кривой виджет получился, что на полном экране он ломается ?


Название: Re: Как можно отредактировать titlebar QWidget?
Отправлено: __Heaven__ от Июнь 15, 2017, 12:30
хотелось бы от кнопки "полный экран" избавиться вообще
Кажется, таких окон в винде не бывает. Либо вообще ничего, либо закрыть, либо погашенные свернуть/развернуть


Название: Re: Как можно отредактировать titlebar QWidget?
Отправлено: maria123252 от Июнь 15, 2017, 13:02
очень кривой виджет получился, что на полном экране он ломается ?

да, очень некрасивый выходит


Название: Re: Как можно отредактировать titlebar QWidget?
Отправлено: gil9red от Июнь 15, 2017, 13:35
хотелось бы от кнопки "полный экран" избавиться вообще
Кажется, таких окон в винде не бывает. Либо вообще ничего, либо закрыть, либо погашенные свернуть/развернуть

Когда делал свое окошко, то все нужное на окне рисовал вручную
окну передавал флаг Qt::WindowFlags flags = Qt::Tool | Qt::FramelessWindowHint;
и через paintEvent рисовал

Благодаря флагу Qt::Tool окна не показывали на панели задач
А Qt::FramelessWindowHint убирал рамку окна


Название: Re: Как можно отредактировать titlebar QWidget?
Отправлено: __Heaven__ от Июнь 15, 2017, 13:53
Понимаю, что ТС хочет сохранить нативный вид окна при этом