Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: igorko от Октябрь 04, 2006, 16:49



Название: Показать последнюю строку во View
Отправлено: igorko от Октябрь 04, 2006, 16:49
Здравствуйте!

Вот какая проблема:

При добавлении строк в модель-таблицу указатель TableView "исчезает" и необходимо вручную "прокручивать" таблицу до последней строки.

Вот, что я делал, чтобы "показать" последюю строку:

void MyTableView::rowsInserted ( const QModelIndex & parent, int start, int end )
{
   QModelIndex i = model()->index(model()->rowCount()-1,0);
   showRow(model()->rowCount()-1);
   selectionModel()->setCurrentIndex(i, QItemSelectionModel::ClearAndSelect);
   resizeColumnsToContents();
   resizeRowsToContents();
}

Но ничего не помогло :(

Помогите, плз, разобраться где грабли.

Спасибо!


Название: Показать последнюю строку во View
Отправлено: Allender от Октябрь 04, 2006, 16:54
Если Qt 3, используй у QScrollView
void ensureVisible ( int x, int y )
void ensureVisible ( int x, int y, int xmargin, int ymargin )

Если Qt 4 -
void scrollToBottom ()
void scrollToTop () у QAbstractItemView


Название: Показать последнюю строку во View
Отправлено: igorko от Октябрь 04, 2006, 17:08
Большое спасибо, Allender!

А как мне теперь выбрать первую ячейку последней строки?
(Чтобы пользователь сразу начал вводить данные)

Простите, если вопросы дилетантские.

P.S. У меня Qt 4


Название: Показать последнюю строку во View
Отправлено: Allender от Октябрь 05, 2006, 08:06
Цитата: "igorko"
Большое спасибо, Allender!

А как мне теперь выбрать первую ячейку последней строки?
(Чтобы пользователь сразу начал вводить данные)

Простите, если вопросы дилетантские.

P.S. У меня Qt 4


Ха, я а воззираю на доки и думаю как же фсе поменялось :)))

Попробую что-нибудь эдакое

Код:

void QAbstractItemView::edit ( const QModelIndex & index )  [slot]
Starts editing the item item at index if it is editable


У тебя вроде нужный тебе индекс был в коде[/code]