Russian Qt Forum
Ноябрь 13, 2024, 09:40 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QTableWidget - вставить текст  (Прочитано 9678 раз)
kpx13
Гость
« : Июнь 16, 2010, 18:27 »

Как просто взять и заполнить таблицу текстом?  mtrx->item(i, j)->setText("0"); не работает ни фига! почему?
Записан
BRE
Гость
« Ответ #1 : Июнь 16, 2010, 18:37 »

Как просто взять и заполнить таблицу текстом?  mtrx->item(i, j)->setText("0"); не работает ни фига! почему?
Потому что нужно сначала этот item создать и установить.
Посмотри на QTableWidget::setItem
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #2 : Июнь 16, 2010, 18:38 »

>>item(i, j)->setText
А элемент-то есть? Создал?
Записан

Юра.
kpx13
Гость
« Ответ #3 : Июнь 16, 2010, 18:47 »

Ясно, спасибо!
извиняюсь за глупый вопрос, но почему нельзя было легче сделать метод, без всяких лишних телодвижений? Это ведь такая тривиальная задача

            QTableWidgetItem item;
            mtrx->setItem(i, j, &item);
            mtrx->item(i, j)->setText("0");

- не работает, ничего не заполняет
« Последнее редактирование: Июнь 16, 2010, 18:51 от kpx13 » Записан
kpx13
Гость
« Ответ #4 : Июнь 16, 2010, 19:00 »

           QTableWidgetItem *item = new QTableWidgetItem;
            item->setText("0");
            mtrx->setItem(i, j, item);

а так заработало... бред какой-то!
А как выровнять текст по ширине? по центру сделать?
Записан
Kolobok
Гость
« Ответ #5 : Июнь 16, 2010, 19:37 »

QTableWidgetItem::setData ( int role, const QVariant & value )

offtop
I love Qt
бред какой-то!

Ты уж определись Улыбающийся
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #6 : Июнь 16, 2010, 20:12 »

>>а так заработало... бред какой-то!
учебник тебе надо по Си++, читать про область видимости переменных
Записан

Юра.
kpx13
Гость
« Ответ #7 : Июнь 17, 2010, 00:49 »

Так я же ничего не поменяла, указатель только сделала.
Да, я люблю qt, это всегда так бывает: сначала бесишься, а потом понимаешь что ответ есть
Записан
ifthl
Гость
« Ответ #8 : Июнь 17, 2010, 10:25 »

           QTableWidgetItem *item = new QTableWidgetItem;
            item->setText("0");
            mtrx->setItem(i, j, item);

а так заработало... бред какой-то!
А как выровнять текст по ширине? по центру сделать?

ИМХО
Так объекты создаются в глобальной памяти, а как вы писали до этого в стёке, видимо при выходе из функции они удалились(сработал деструктор).
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.259 секунд. Запросов: 23.