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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как запретить растягиваться вложенный layout  (Прочитано 4494 раз)
Xenon
Гость
« : Март 04, 2011, 21:40 »

Доброго времени суток.
Приношу свои извинения за довольно "ламерский" вопрос, но после несколькочасовых поисков в интернете и мучительных экспериментов с дизайнером ответа я так найти и не смог  Непонимающий



Как сделать чтобы левый вертикальный layuot не растягивался по ширине, а растягивалась только правая кнопка?

Заранее благодарю за помощь.
Записан
Fat-Zer
Гость
« Ответ #1 : Март 04, 2011, 21:47 »

решение влоб: положить туда Виджет и на него уже лейаут
Записан
Xenon
Гость
« Ответ #2 : Март 04, 2011, 22:35 »

Спасибо. "Влоб" все получилось. Просто у меня довольно сложный интерфейс и получается тогда куча вложенных лайаутов с виджетами. Интересно это значительно скажется на производительности окна? (например при ресайзе)

Есть вопрос тогда раз уж я начал спрашивать; новые темы плодить не буду - спрошу сразу здесь:
    1. Можно ли как-то в QTCreator'е создавать папки проекта как в MS VS? (а то когда куча файлов и все лежат скопом не структурировано это вообще кошмар)
    2. Как видно из рисунка выше, все элементы окна имеют такой же фон как и само окно (я поставил в качестве бекграунда картинку). Как можно в дизайнере в пункте styleSheet установить бекграунд-картинку только непосредственно для самого окна?
    Сейчас у меня background-image: url(:/image/WindowBackground); пробовал и QMainWindow {background-image: url(:/image/WindowBackground)}; и разные комбинации, но ничего не помогало (фон вообще пропадал)
« Последнее редактирование: Март 04, 2011, 22:41 от Xenon » Записан
Xenon
Гость
« Ответ #3 : Март 05, 2011, 00:08 »

Кстати, есть еще более корректный способ, чем приведенный "влоб": поместить в Form Layout  Улыбающийся Похоже я сегодня переработался, что столько времени убил, а об этом не додумался....  В замешательстве

Но приведенных выше 2 вопроса все еще актуальны, так что если кто знает, то буду очень признателен за просвещение  Улыбающийся
Записан
spirt
Гость
« Ответ #4 : Март 05, 2011, 15:37 »

2. Как видно из рисунка выше, все элементы окна имеют такой же фон как и само окно (я поставил в качестве бекграунда картинку). <...>

В qss окна прописать:
QMainWindow#имя_окна
{
background-image: url(:/image/WindowBackground)
}
Записан
Xenon
Гость
« Ответ #5 : Март 06, 2011, 18:46 »

В qss окна прописать:
QMainWindow#имя_окна
{
background-image: url(:/image/WindowBackground)
}

Как только указываю как написано выше, то сразу фон в дизайнере пропадает:


Хотя если я делаю превью окна по Ctrl+R, то фон отрисовывается так как надо:


Судя по всему в дизайнер еще не знает что есть #MainWindow? Хотя в ObjectInspector'е отлично видно что относится к данному имени.. Можно как-то сделать чтобы видеть фон в дизайнере при разработке формы? Просто это позволяет удобнее подбирать сочетание цветовой гаммы всех контролов на форме (не надо постоянно Ctrl+R жать).
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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