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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: как отловить изменение кол-ва строк в QTableWidget?  (Прочитано 3923 раз)
Павел_F.
Гость
« : Декабрь 28, 2009, 09:10 »

Есть унаследованный от QTableWidget класс. Нужно отследить изменение кол-ва строк в нем. В хелпе не нашел как.
Есть у него:
void QTableView::rowCountChanged ( int oldCount, int newCount )   [protected slot]
This slot is called whenever rows are added or deleted. The previous number of rows is specified by oldCount, and the new number of rows is specified by newCount.
Но как это мне поможет, и поможет ли, не понимаю?...
Записан
BRE
Гость
« Ответ #1 : Декабрь 28, 2009, 09:18 »

А кто может изменить количество строк и как?
Этот кто-то все равно должен вызвать setRowCount или insertRow... Можно в классе добавить свой метод(ы) для этого и в нем(них) - отслеживать.
Записан
Павел_F.
Гость
« Ответ #2 : Декабрь 28, 2009, 09:27 »

Так, конечно, можно. Но я пишу абстрактный класс, нужен он мне, и соответственно там присутствуют чисто виртуальные функции. Где что добавится я не знаю. Хотелось бы не вылезать за свой абстрактный класс. Я не знаю где и как вызовется изменение кол-ва строк. Можно конечно переопределить все что это кол-во меняет и добавить туда. Но может есть более "простое и красивое" решение.
Записан
BRE
Гость
« Ответ #3 : Декабрь 28, 2009, 09:37 »

Можно получить внутреннею модель QTableWidget и подключиться к ее сигналам:
void rowsInserted ( const QModelIndex & parent, int start, int end )
void rowsRemoved ( const QModelIndex & parent, int start, int end )
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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