QSplitter - добавление виджетов |
Здравствуйте, гость ( Вход | Регистрация )
QSplitter - добавление виджетов |
breeve |
12.2.2010, 15:22
Сообщение
#1
|
Участник Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: 1 |
//Не хотелось бы задавать тупых вопросов.. Но, тем не менее..
Как сделать так чтобы на Splitter добавить кнопку? Создал splitter вертикальный, разместил его между двумя TextEdit'ами.. И необходимо чтобы на самом Splitter'е была кнопка. И если ты двигаешь его то он движется вместе с кнопкой и заодно изменяет размер нижнего TextEdit'а. Как пример если кто видел Skype на Unix.. там в окне чата есть панелька со смайликами и еще какими-то кнопками.. Вот что получилось у меня: Раскрывающийся текст
Сообщение отредактировал breeve - 12.2.2010, 16:27 |
|
|
Litkevich Yuriy |
12.2.2010, 15:24
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
breeve |
12.2.2010, 16:27
Сообщение
#3
|
Участник Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: 1 |
давай снимок экрана Скрин не стал делать, было бы не понятно. Залил видео.
Прикрепленные файлы
|
|
|
BRE |
12.2.2010, 16:51
Сообщение
#4
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
давай снимок экрана Скрин не стал делать, было бы не понятно. Залил видео. Это обычный сплиттер, внизу расположен виджет на котором находиться QFrame (с кнопками) и QTextEdit. Для QFrame зафиксирована высота. Сообщение отредактировал BRE - 12.2.2010, 16:56
Прикрепленные файлы
|
|
|
Litkevich Yuriy |
12.2.2010, 17:18
Сообщение
#5
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
BRE, а по моему и того проще (удалите расширение txt)
skipe.ui.txt ( 2,49 килобайт ) Кол-во скачиваний: 489 я не делал фиксированного размера |
|
|
BRE |
12.2.2010, 17:24
Сообщение
#6
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
BRE, а по моему и того проще (удалите расширение txt) skipe.ui.txt ( 2,49 килобайт ) Кол-во скачиваний: 489 я не делал фиксированного размера А я .ui тоже отказался от дополнительного QFarme, QWidget на нем кнопки (в QHBoxLayout) и QTextEdit. |
|
|
breeve |
12.2.2010, 19:28
Сообщение
#7
|
Участник Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: 1 |
Кто-нибудь может объяснить на словах.. А то я смотрю на код и не могу ничего понять..
Сообщение отредактировал breeve - 12.2.2010, 19:28 |
|
|
BRE |
12.2.2010, 19:37
Сообщение
#8
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
Кто-нибудь может объяснить на словах.. А то я смотрю на код и не могу ничего понять.. Например. Сплитер разделяет два виджета. Верхний QListView, нижний QWidget. На нижнем располагается ряд кнопок, лейблов, ... (виджетов) - они располагаются QHBoxLayout. Ниже расположен QTextEdit. Верхний ряд и QTextEdit лежат в QVBoxLayout. Если зафиксировать высоту всех элементов в верхнем ряду, то получишь нужный эффект. |
|
|
breeve |
12.2.2010, 19:52
Сообщение
#9
|
Участник Группа: Участник Сообщений: 188 Регистрация: 26.12.2009 Пользователь №: 1336 Спасибо сказали: 9 раз(а) Репутация: 1 |
Например. Я наверное не правильно задал вопрос.. Как это все выглядит я понимаю, а вот что мне сделать чтобы выглядело так же, не совсем.. Сплитер разделяет два виджета. Верхний QListView, нижний QWidget. На нижнем располагается ряд кнопок, лейблов, ... (виджетов) - они располагаются QHBoxLayout. Ниже расположен QTextEdit. Верхний ряд и QTextEdit лежат в QVBoxLayout. Если зафиксировать высоту всех элементов в верхнем ряду, то получишь нужный эффект. Как я понял в сплит нужно добавить верхнее текстовое поле и layout который содержит toolBar(или hLay с кнопками) и нижнее поле.. Только как мне в splitter добавить layout? Сообщение отредактировал breeve - 12.2.2010, 19:53 |
|
|
Litkevich Yuriy |
12.2.2010, 19:58
Сообщение
#10
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Кто-нибудь может объяснить на словах.. А то я смотрю на код и не могу ничего понять.. могу объяснить, как я сделал:1) Взял в дизайнере проект на основе QWidget 2) Положил на него два QTextEdit'а, на глазок 3) между ними положил в ряд: QToolButton, горизонтальную распорку, и ещё два QToolButton 4) Выделил QToolButton'ы и распорку, нажал кнопку "компоновать горизонтально" (они сцепились в одно целое) 5) Предыдущая группа виджетов пока ещё выделена, нажал CTRL и выделил нижний QTextEdit, нажал кнопку "компоновать вертикально" (они сцепились в одно целое) 6) Предыдущая группа виджетов пока ещё выделена, нажал CTRL и выделил верхний QTextEdit, нажал кнопку "компоновать вертикально с разделителем" (они сцепились в одно целое) 7) Выделил виджет верхнего уровня и нажал "компоновать ***" (здесь подойдёт и горизонтальная и вертикальная компоновка) |
|
|
Текстовая версия | Сейчас: 5.12.2024, 1:46 |