Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: qtист от Июль 17, 2009, 10:01



Название: QMdiSubWindow
Отправлено: qtист от Июль 17, 2009, 10:01
Дорбавляю в QMdiSubWindow :

Код
C++ (Qt)
QToolBar *b=new QToolBar;
QAction *ActMenu1_2 = new QAction(QIcon("x.png"),tr("куку"), this);
b->addAction(ActMenu1_2);
setWidget(b);

Появляется в центре окна >:( (в мурзилке написано - так и надо)
А как бы сделать,чтоб тулбар появлялся как положено - под заголовком :'(


Название: Re: QMdiSubWindow
Отправлено: ufna от Июль 17, 2009, 10:16
Код
C++ (Qt)
addToolbar(b);

Ты просто а setWidget(b); делает его центральным.


Название: Re: QMdiSubWindow
Отправлено: pastor от Июль 17, 2009, 10:33
2 ufna: в QMdiSubWindow  нет addToolbar

2 qtист: для этого используй лайаут. Это быдет выглядеть примерно так:

Код
C++ (Qt)
QWidget *widget = new QWidget();
QVBoxLayout *layout = QVBoxLayout();
 
QToolBar *b=new QToolBar(widget);
QAction *ActMenu1_2 = new QAction(QIcon("x.png"),tr("куку"), b);
b->addAction(ActMenu1_2);
 
layout->addWidget(b);
layout->addStretch();
widget->setLayout(layout);
 
setWidget(widget );


Название: Re: QMdiSubWindow
Отправлено: ufna от Июль 17, 2009, 10:56
тьфу, туплю, точно.


Название: Re: QMdiSubWindow
Отправлено: qtист от Июль 17, 2009, 11:01
2pastor  - да,получилось,спасибо
 но вот такой нюанс - есть отступы от тулбар  до краёв окна.
а мона ли без отступов сделать(как в QMainWindow)


Название: Re: QMdiSubWindow
Отправлено: pastor от Июль 17, 2009, 11:04
но вот такой нюанс - есть отступы от тулбар  до краёв окна.
а мона ли без отступов сделать(как в QMainWindow)

см, QLayout::setSpacing, QLayout::setContentsMargins


Название: Re: QMdiSubWindow
Отправлено: qtист от Июль 17, 2009, 11:11
Помогло
layout->setContentsMargins(0,0,0,0);

спасибо ::)