Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: blood_shadow от Август 02, 2010, 19:18



Название: Таблица и setTextAlignment
Отправлено: blood_shadow от Август 02, 2010, 19:18
1. Вот и доделал свою программу, благодаря Qt Assistant и этому форуму, остался только один неразрешенный вопрос
Код:
for (int i=0, z=0; i<TableRows; ++i) {

        for (j=0; j<TableColumns; ++j) {
            item = new QTableWidgetItem;

            item->setFont(*tableFont);
            item->setTextAlignment(Qt::AlignCenter);
            item->setText((*cellsBuildingBlock).at(j+z));

            tableWidget->setItem(i, j, item);
        }
        z=z+j;
    }

Есть таблица tableWidget(QTablewidget), в цикле задаю значения этой таблицы с помощью item->setText, cellsBuildingBlock - указатель на объект QStringList, все выравниваю по абсолютному центру ячейки
Код:
item->setTextAlignment(Qt::AlignCenter);
, но выравнивается все кроме самой правой колонны, почему так происходит или это просто баг?(http://savepic.org/613459.jpg)

2. Второй вопрос насчет механизма setItem класса QTableWidgetItem
Код:
      item = new QTableWidgetItem;
      item->setText((*cellsBuildingBlock).at(j+z));
      tableWidget->setItem(i, j, item);
Почему указатель *item нельзя использовать для следующей ячейки, а необходимо обязательно через ф-цию clone, или указатель на *item
после своего использования удаляется?


Название: Re: Таблица и setTextAlignment
Отправлено: Пантер от Август 03, 2010, 06:35
item->setTextAlignment(Qt::AlignHCenter);


Название: Re: Таблица и setTextAlignment
Отправлено: blood_shadow от Август 03, 2010, 11:50
item->setTextAlignment(Qt::AlignHCenter);

Не помогло, картина та же, за исключением того что центрирование стало только по горизонтали. Самое интересное что самый последний элемент последней колонки все-таки центрируется, а остальные нет (http://savepic.org/624517.jpg)


Название: Re: Таблица и setTextAlignment
Отправлено: Пантер от Август 03, 2010, 16:51
Компилябельный пример сюда приложи.