crossplatform.ru

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

3 страниц V  < 1 2 3 >  
Ответить в данную темуНачать новую тему
> создание айтемов в QStandardItemModel для QTreeView
icore2008
  опции профиля:
сообщение 23.7.2008, 8:06
Сообщение #11


Студент
*

Группа: Новичок
Сообщений: 22
Регистрация: 10.4.2008
Пользователь №: 145

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




Репутация:   0  


Cпасибо Вам огромнейшее :)
Поделитесь, пожалуйста, книжкой Шлее. В Интернете искал, но там либо ссылки битые, либо скачивается архив с книжкой но не до конца, столько трафика убил уже :(
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 23.7.2008, 8:15
Сообщение #12


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


лучше купи, она того стоит, я на Озоне покупал

вот тут список магазинов и цен.
заметь в названии Qt4!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
void*
  опции профиля:
сообщение 23.7.2008, 9:21
Сообщение #13


Программист-самоучка
***

Группа: Участник
Сообщений: 429
Регистрация: 4.6.2008
Пользователь №: 193

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




Репутация:   3  


Цитата(icore2008 @ 22.7.2008, 22:29) *
хочу, чтобы напротив надписей item1, item2, item3 во второй колонке находились другие надписи

знаю еще что в QTreeWidget'e для твоего случая такие надписи можно сделать так:
QTreeWidgetItem item;
item.setText(1, "your text"); //1 - номер столбца, отсчет начинается с нуля
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
icore2008
  опции профиля:
сообщение 23.7.2008, 13:28
Сообщение #14


Студент
*

Группа: Новичок
Сообщений: 22
Регистрация: 10.4.2008
Пользователь №: 145

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




Репутация:   0  


Цитата(void* @ 23.7.2008, 9:21) *
...
знаю еще что в QTreeWidget'e для твоего случая такие надписи можно сделать так:
QTreeWidgetItem item;
item.setText(1, "your text"); //1 - номер столбца, отсчет начинается с нуля


Спасибо, можно, но у меня модель QStandardItemModel
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
icore2008
  опции профиля:
сообщение 23.7.2008, 16:35
Сообщение #15


Студент
*

Группа: Новичок
Сообщений: 22
Регистрация: 10.4.2008
Пользователь №: 145

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




Репутация:   0  


Интересует вот этот кусочек кода:

 model.insertRows(0, 4, index);
        model.insertColumns(0, 3, index);
        for (int nRow = 0; nRow < 4; ++nRow) {
            for (int nCol = 0; nCol < 3; ++nCol) {
                QString strPos = QString("%1,%2").arg(nRow).arg(nCol);
                model.setData(model.index(nRow, nCol, index), strPos);


Можно ли как-то положить во вновь создаваемые строки и колонки объекты типа QStandardItem?
пробовал

Цитата
void QStandardItemModel::setItem ( int row, int column, QStandardItem * item )


но тут нужно указывать ряд, куда вставлять, а в примере, приведенном Litkevich Yuriy, количество строк в модели, после добавления остаётся равным 5.

Сообщение отредактировал icore2008 - 23.7.2008, 16:43
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 23.7.2008, 16:53
Сообщение #16


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


посмотри void QStandardItemModel::appendRow ( const QList<QStandardItem *> & items )
может подойдет
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
icore2008
  опции профиля:
сообщение 23.7.2008, 16:58
Сообщение #17


Студент
*

Группа: Новичок
Сообщений: 22
Регистрация: 10.4.2008
Пользователь №: 145

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




Репутация:   0  


Цитата(Litkevich Yuriy @ 23.7.2008, 16:53) *


подойдет, но только для добавления к основной модели, а мне нужно именно дочерние QStandardItem

Сообщение отредактировал icore2008 - 23.7.2008, 16:59
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 23.7.2008, 17:07
Сообщение #18


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


если тебя смутило, то что число строк не меняется, то обрати внимание на исходную функцию:
Цитата
void QStandardItemModel::setItem ( int row, int column, QStandardItem * item )

Sets the item for the given row and column to item. The model takes ownership of the item. If necessary, the row count and column count are increased to fit the item. The previous item at the given location (if there was one) is deleted.

This function was introduced in Qt 4.2.

See also item().
void QStandardItemModel::setItem ( int row, QStandardItem * item )

This is an overloaded member function, provided for convenience.


т.е. "Если необходимо, то число строк и число колонок увеличивается, чтобы разместить элемент"
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
icore2008
  опции профиля:
сообщение 23.7.2008, 17:12
Сообщение #19


Студент
*

Группа: Новичок
Сообщений: 22
Регистрация: 10.4.2008
Пользователь №: 145

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




Репутация:   0  


Цитата(Litkevich Yuriy @ 23.7.2008, 17:07) *
если тебя смутило, то что число строк не меняется, то обрати внимание на исходную функцию:
Цитата
void QStandardItemModel::setItem ( int row, int column, QStandardItem * item )

...


т.е. "Если необходимо, то число строк и число колонок увеличивается, чтобы разместить элемент"


хорошо, но как я укажу int row, int column, куда нужно положить айтемы?
после построения модели (добавления рядов и колонок) число строчек не меняется
Проверял qDebug'ом

Сообщение отредактировал icore2008 - 23.7.2008, 17:13
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 23.7.2008, 17:19
Сообщение #20


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


тебе надо разобратся как работате пример у Макса, и внужное тебе место вставлять елемент, ведь тыже хочешь его кудато конктретно воткнуть.
читал это: "Классы моделей"?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

3 страниц V  < 1 2 3 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


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




RSS Текстовая версия Сейчас: 29.11.2024, 3:39