Название: Аналог центрального виджета в QMdiArea Отправлено: aleksey.snake от Март 05, 2011, 13:22 Здравствуйте.
Пишу многооконное приложение. Нужно чтобы вместо фона QMdiArea был виджет. Аналогично, как у QMainWindow есть метод setCentralWidget(). Пробовал использовать setViewport(), но тогда в некоторых случаях свернутые окна уходят на задний план и пользователю их больше не развернуть. Как можно поместить виджет на QMdiArea так, чтоб он не перекрывал сворачиваемые окна? Спасибо. Название: Re: Аналог центрального виджета в QMdiArea Отправлено: GreatSnake от Март 05, 2011, 13:25 Может viewport()->lower() поможет?
Название: Re: Аналог центрального виджета в QMdiArea Отправлено: aleksey.snake от Март 05, 2011, 13:34 Не помогло.
Чуть расскажу больше про реализацию. Нужно положить на фон QTabWidget. Если класть только его, то не будет места под сворачиваемые окошки mdi, поэтому я кладу вниз окна QWidget с фиксированной высотой 16, как раз под высоту заголовка. Может тогда как-нибудь сделать это QWidget прозрачным для клика пользователя? Название: Re: Аналог центрального виджета в QMdiArea Отправлено: GreatSnake от Март 05, 2011, 13:42 Цитировать ... поэтому я кладу вниз окна QWidget с фиксированной высотой 16, как раз под высоту заголовка Очень порочная практика привязываться к фиксированным размерам элеметов GUI.Для этого есть QStyle::pixelMetric( QStyle::PM_TitleBarHeight ). Цитировать Может тогда как-нибудь сделать это QWidget прозрачным для клика пользователя? setAttribute( Qt::WA_TransparentForMouseEvents );Название: Re: Аналог центрального виджета в QMdiArea Отправлено: aleksey.snake от Март 05, 2011, 14:02 Не помогло. Может нужно какое-то другое решение поставленной задачи?
А то прозрачные виджеты, мне кажется, тоже порочная практика. Название: Re: Аналог центрального виджета в QMdiArea Отправлено: GreatSnake от Март 05, 2011, 14:11 Цитировать Может нужно какое-то другое решение поставленной задачи? Однозначно. Тем более ломать стандартный GUI тоже порочная практика :)Название: Re: Аналог центрального виджета в QMdiArea Отправлено: aleksey.snake от Март 05, 2011, 14:19 Еще и ресайз не работает.
Так как на этот серый фон положить виджет? Или это такие строгие каноны mdi? В 1С например есть постоянный элемент управления вместо фона. Название: Re: Аналог центрального виджета в QMdiArea Отправлено: JayFOX от Март 07, 2011, 10:56 Как вариант:
Код: QTabWidget *tab = new QTabWidget; |