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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как для виджета правильно устанавливать Spacing?  (Прочитано 4078 раз)
billy4685
Крякер
****
Offline Offline

Сообщений: 306


Просмотр профиля
« : Февраль 25, 2015, 10:36 »

Здравствуйте, господа форумчане. Во многих средах разработки для некоторых виджетов типа Group, Panel, TreeWidget и т. д. можно устанавливать Spacing, то есть расстояние между компонентами(другими виджетами) расположенными на этих виджетах. Для этого в этих средах разработки существуют специальные методы типа setSpacing(int spacing).
В Qt Creator я пока подобные операции делал используя QLayout, цепляя его к нужному виджету (к примеру к тем же QGroup, QFrame, QTreeWidget и т. д.) и добавляя в этот Layout виджеты, которые размещенные на родительском виджете. После этого применял к Layout метод setSpacing(int).

Существуют ли в Qt другие методы установки расстояния Spacing между виджетами для родительского виджета не используя QLayout?
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #1 : Февраль 25, 2015, 10:47 »

Расположением виджетов занимается QLayout, поэтому только у него и его наследников есть то свойство Spacing
Записан

billy4685
Крякер
****
Offline Offline

Сообщений: 306


Просмотр профиля
« Ответ #2 : Февраль 25, 2015, 11:48 »

ясно) спасибо)
Записан
billy4685
Крякер
****
Offline Offline

Сообщений: 306


Просмотр профиля
« Ответ #3 : Февраль 27, 2015, 13:38 »

А как же тогда быть с кнопками, которые расположены на QToolBar? Можно ж как-то устанавливать расстояние между кнопками на панели инструментов?
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #4 : Февраль 27, 2015, 13:48 »

А как же тогда быть с кнопками, которые расположены на QToolBar? Можно ж как-то устанавливать расстояние между кнопками на панели инструментов?
Через CSS QToolBar::spacing.
Записан

Qt 5.11/4.8.7 (X11/Win)
billy4685
Крякер
****
Offline Offline

Сообщений: 306


Просмотр профиля
« Ответ #5 : Март 02, 2015, 10:02 »

А как же тогда быть с кнопками, которые расположены на QToolBar? Можно ж как-то устанавливать расстояние между кнопками на панели инструментов?
Через CSS QToolBar::spacing.
спасибо) сделал вот так вот:
Код:
toolBar->setStyleSheet(QString("QToolBar {spacing: %1}").arg(spacing));
но есть одно но, если уже ранее был задан стиль для ToolBar, то он теряется((. И нужно снова его задавать. Я имею ввиду к примеру цвет.
Записан
billy4685
Крякер
****
Offline Offline

Сообщений: 306


Просмотр профиля
« Ответ #6 : Март 02, 2015, 11:39 »

решил вот так:
Код:
QString temp;
temp = toolBar->styleSheet();
temp + = "QToolBar {spacing: %1}";
toolBar->setStyleSheet(QString(temp).arg(spacing));
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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