Работа с QSplitter в QtCreator |
Здравствуйте, гость ( Вход | Регистрация )
Работа с QSplitter в QtCreator |
Алексей1153 |
16.2.2013, 16:30
Сообщение
#1
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
редактор диалогов в QtCreator не позволяет задавать QSplitter с палитры контролов , а вот захотелось его заставить, и придумалось такое - кладём на форму QFrame , засовываем на него виджеты, сохраняем. Затем с блокноте открываем файл ресурса диалога *.ui и в XML правим класс контрола с QFrame на QSplitter . Сохраняем, перегружаем в креаторе (он сам предложит) . Затем остаётся задать в редакторе (он это уже понимает) нужные свойства сплиттера (в частности - ориентацию разделения). Сохраняем и снова лезем в левый редактор - вложенные теги <widget> сплиттера расставляем в нужном порядке - в таком порядке они расположатся и на экране. Сохраняем, перегружаем. Профит )
|
|
|
Litkevich Yuriy |
16.2.2013, 19:01
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
Алексей1153 |
17.2.2013, 12:38
Сообщение
#3
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
|
|
|
iReset |
17.2.2013, 20:06
Сообщение
#4
|
Участник Группа: Участник Сообщений: 178 Регистрация: 6.6.2012 Пользователь №: 3414 Спасибо сказали: 23 раз(а) Репутация: 2 |
...а вот после правки в дереве всё ок видно... Если бы Creator не поддерживал QSplitter, то он у тебя и не появился бы. Раз появился в дереве, значит, поддерживает....ну там терять особо и негде, его там нету у меня... Просто ты не там ищешь. Кидаешь на форму два элемента, которые надо поместить на QSplitter. Щелкаешь по первому, затем с нажатой Ctrl по второму - выделяешь их. Затем правой клавишей мыши по одному из них -> Lay out -> Lay out ... in Splitter (либо на панели управления кнопки загораются). |
|
|
Алексей1153 |
18.2.2013, 7:23
Сообщение
#5
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
iReset, так я и не говорил, что он не поддерживает. На панели ничего не появляется, а вот с выделением двух и ПКМ - да, появилось, спасибо ) Но это нифига неочевидно
кроме того, поменять порядок элементов невозможно без ручной правки XML . Или опять какой-то фикус есть ? Сообщение отредактировал Алексей1153 - 18.2.2013, 7:25 |
|
|
Litkevich Yuriy |
18.2.2013, 7:51
Сообщение
#6
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
Алексей1153 |
18.2.2013, 8:06
Сообщение
#7
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
блин, я даже не обратил внимания туда )
но с заданием порядка всё та же тема Сообщение отредактировал Алексей1153 - 18.2.2013, 8:06 |
|
|
RazrFalcon |
18.2.2013, 18:41
Сообщение
#8
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
|
|
|
Litkevich Yuriy |
18.2.2013, 20:25
Сообщение
#9
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
можно их (виджеты) перетаскивать мышкой. Но т.к. при этом сплиттер схлопнится, то можно пойти таким путём:
Дано, сплиттер с горизонтальным расположением виджетов, в половинках сплиттера лежат: левый виджет и правый виджет, их нужно поменять местами. Закидываем в левую половину распорку ("пружинку"), хватаем левый виджет и тащим его в правую половину и там бросаем. Правый виджет тащим в левую половину и там бросаем, из левой половины удаляем временную распорку. |
|
|
Алексей1153 |
20.2.2013, 9:05
Сообщение
#10
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
RazrFalcon, нет, я не про порядок обхода
Litkevich Yuriy, Обычный компоновщик такое позволяет, а когда на форме лежит сплиттер с его содержимым, таскается всё вместе, он не даёт таскать отдельный элемент. А так бы да, перетащил бы и успокоился кстати, то, что он схлопнется - не проблема. Обнаружил, что перетаскивать можно на элемент в дереве иерархии - удобно в случае, когда яблоку негде упасть на форме, а прицелиться надо точно Сообщение отредактировал Алексей1153 - 20.2.2013, 9:07 |
|
|
Текстовая версия | Сейчас: 26.12.2024, 20:00 |