![]() |
|
![]() ![]() ![]() |
|
DarkDante2016 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 24.8.2016 Репутация: нет Всего: нет |
Нужно чтобы виджет B шел рядом с виджетом A, но виджет B почему-то далеко от виджета А в чем проблема? Это сообщение отредактировал(а) DarkDante2016 - 24.8.2016, 19:11 |
|||
|
||||
baldman88 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 210 Регистрация: 18.1.2009 Репутация: нет Всего: 7 |
В widget.resize(200, 200)? Что будет если убрать эту строку? Ну и строки вида hBoxLayout->addWidget(pushButtonХ, 0, Qt::AlignLeft | Qt::AlignTop) избыточны. Достаточно будет просто hBoxLayout->addWidget(pushButtonХ).
|
|||
|
||||
DarkDante2016 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 24.8.2016 Репутация: нет Всего: нет |
widget.resize(200, 200);
Это вообще к кнопкам никакого отношения не имеет. А размер окна. Это сообщение отредактировал(а) DarkDante2016 - 25.8.2016, 12:30 |
|||
|
||||
baldman88 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 210 Регистрация: 18.1.2009 Репутация: нет Всего: 7 |
К кнопкам нет. Но к тому, как они будут отображаться очень даже имеет. По умолчанию виджет равномерно распределяет свою площадь под дочерние виджеты. Вот и получается, что под каждую кнопку у Вас выделяется 100х200. Да, Вы сдвигаете кнопки влево и вверх, но это не влияет на размер площади выделенной под них. Если нужно принудительно поместить их рядом, то нужно добавить QSpacerItem.
|
|||
|
||||
DarkDante2016 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 24.8.2016 Репутация: нет Всего: нет |
Спасибо большое. То есть то что я задаю 20X20 на самом деле 100X200?
|
|||
|
||||
baldman88 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 210 Регистрация: 18.1.2009 Репутация: нет Всего: 7 |
Не совсем так. Кнопки будут именно 20х20, но площадь на которой они будут размещаться будет 100х200. Ради интереса можно поэкспериментировать с размерами кнопок. Например, если размер кнопки А задать 150х20, а кнопки В 20х20, то под первую кнопку выделится площадь 150х200, а под вторую -- 50х200 (при размере главного виджета 200х200, пробелах между виджетами равными нулю и отступами равными нулю). Для создания интерфейса советую использовать Qt Designer. Раньше сам его недолюбливал, но со временем понял, что это очень удобная вещь. Главное научиться им пользоваться
![]() |
|||
|
||||
DarkDante2016 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 24.8.2016 Репутация: нет Всего: нет |
Qt Designer действительно вещь удобная. Только сначала лучше иметь небольшой багаж знаний на уровне самому это разместить самописно чтобы там проблем потом не возникло при быстрой разработке. Хотя с помощью неё вначале можно решать такие проблемы как у меня визуально видя это. Правда я только вчера туда
немного раньше твоего ответа зашел вспомнил что есть просмоторщик(ну и создатель) Qt Designer, но мысль до конца сформировать помог уже ты. |
|||
|
||||
borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 48 Всего: 135 |
Я, например, если возникают подобные проблемы, набрасываю нужный интерфейс в дизайнере, затем генерю ui_filename.h файл и подсматриваю там, как правильно сделать тот или иной трюк в интерфейсе -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
DarkDante2016 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 24.8.2016 Репутация: нет Всего: нет |
Можешь пожалуйста сказать как генериш? Это сообщение отредактировал(а) DarkDante2016 - 26.8.2016, 16:51 |
|||
|
||||
borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 48 Всего: 135 |
В Qt Designer'е выбираю пункт меню "Форма/Показать код...". Можно и просто создать временный виджет, добавить его в проект, запустить компиляцию, затем найти файл ui_widget_name.h. В нём, по существу, одна функция - setupUi() -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
DarkDante2016 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 24.8.2016 Репутация: нет Всего: нет |
Еще вопрос такой как задавать местоположение элемента в компоновке (через setGeometry не работает)?
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |