Russian Qt Forum
Ноябрь 25, 2024, 00:51 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: MDI(SDI) управление размешением окон?  (Прочитано 7133 раз)
GrolfCry
Гость
« : Март 21, 2005, 06:20 »

Есть приложение MDI(SDI) как управлять размещением окон внутри воркспейса (к-л бокса)? Например одно к левому краю, одно в центре. Устанавливая позицию и размеры? или можно применить лайоуты?
Записан
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #1 : Март 21, 2005, 08:46 »

может, тебе QDockWindow надо?
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
GrolfCry
Гость
« Ответ #2 : Март 21, 2005, 08:56 »

Пробовал, но при вставке qmainwindow в qdockwindow (чтобы не переделывать исходники форм и прочее) возникала проблемма ресайза, те при изменении размеров док-винд часть qmainwindow  становилась невидимой, переопределять метод ресайз неохота, может есть другой способ, св-ва например к-н.б выставить?
делал так
Код:

QVBox* vb = new QVBox(this);
vb->setFrameStyle( QFrame::StyledPanel | QFrame::Sunken );
ws = new QWorkspace( vb);
dw=new QDockWindow(QDockWindow::OutsideDock,ws,0,WDestructiveClose);
dw->setResizeEnabled(true);
win= new Win(dw);
...
Записан
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #3 : Март 21, 2005, 10:05 »

погоди. тебе надо управлять окнами - чилдами воркспейса или докнутыми панелями? это принципиально различные фичи.

в воркспейсе ты можешь управлять размерами и размещением только непосредственной установкой, либо базовыми методами воркспейса (2 варианта расположения - тайл и одно на другом).

док-окна в воркспейс ИМХО лучше и не вставлять...
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #4 : Март 21, 2005, 10:09 »

Цитата: "GrolfCry"

Код:

QVBox* vb = new QVBox(this);
vb->setFrameStyle( QFrame::StyledPanel | QFrame::Sunken );
ws = new QWorkspace( vb);
dw=new QDockWindow(QDockWindow::OutsideDock,ws,0,WDestructiveClose);
dw->setResizeEnabled(true);
win= new Win(dw);
...


погоди. а dw->setWidget(win) ты забыл сделать? без этого оно и не будет верно работать.
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
GrolfCry
Гость
« Ответ #5 : Март 21, 2005, 11:25 »

СДЕЛАЛ только не написал
Записан
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #6 : Март 21, 2005, 11:38 »

а почему ты создаешь док-окна как чилды от воркспейса? они корректно работают только, будучи чилдами QMainWindow.
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.115 секунд. Запросов: 23.