crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Тема закрытаНачать новую тему
> [РЕШЕНО] Выравнивание виджетов внутри QTableWidget
Rocky
  опции профиля:
сообщение 24.12.2008, 0:28
Сообщение #1


Старейший участник
****

Группа: Участник
Сообщений: 530
Регистрация: 22.12.2008
Из: Санкт-Петербург
Пользователь №: 463

Спасибо сказали: 22 раз(а)




Репутация:   7  


В ячейках QTableWidget создаю чекбоксы и задаю их посредством setCellWidget. Как мне выровнять эти чекбоксы? Просто их граница практически совпадает с границей колонки таблицы, и получается не очень красиво.

Спасибо!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 24.12.2008, 12:14
Сообщение #2


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Я делал подругому в свое время, клал layout, делал на нем нужные мне отступы, после чего уже на клал чекбокс.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 24.12.2008, 14:45
Сообщение #3


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


попробуй что-нибудь такое:
void QTableView::setSpan ( int row, int column, int rowSpanCount, int columnSpanCount )
void QWidget::setContentsMargins ( int left, int top, int right, int bottom )
они вроде чего то там выравнивают.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Rocky
  опции профиля:
сообщение 27.12.2008, 18:44
Сообщение #4


Старейший участник
****

Группа: Участник
Сообщений: 530
Регистрация: 22.12.2008
Из: Санкт-Петербург
Пользователь №: 463

Спасибо сказали: 22 раз(а)




Репутация:   7  


Если кто будет читать, я сделал вот так:
//выравнивание чекбокса внутри ячеек таблицы
QWidget *pCheckBoxWholeWidget = new QWidget();
QHBoxLayout *pLayoutWidget = new QHBoxLayout;
pLayoutWidget->setMargin(0);
pLayoutWidget->setSpacing(0);
QCheckBox *pCheckBox = new QCheckBox;
pLayoutWidget->addWidget(pCheckBox, 0, Qt::AlignCenter);
pCheckBoxWholeWidget->setLayout(pLayoutWidget);
m_pTasksTable->setCellWidget(nRow, 4, pCheckBoxWholeWidget);
Причина редактирования: тэг код с параметром: code=cpp
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Тема закрытаНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 29.3.2024, 9:59