Автор: TaIRou 26.12.2010, 16:07
всем доброго времени суток...
cornerWidget - угловая кнопка QTableView (верхний левый угол).
Служит для выделения всех ячеек таблицы.
qtableview.cpp :
void QTableViewPrivate::init()
{
...
cornerWidget = new QTableCornerButton(q);
cornerWidget->setFocusPolicy(Qt::NoFocus);
QObject::connect(cornerWidget, SIGNAL(clicked()), q, SLOT(selectAll()));
}
Необходимо изменить поведение этой кнопки и вызывать совершенно другой слот.
Кнопка создается и используется в приватном классе QTableViewPrivate.
Проблема: при наследовании от QTableView механизмов доступа к cornerWidget я не знаю.В определении класса QTableView есть такие функции-члены доступа к этой кнопке
void setCornerButtonEnabled(bool enable);
bool isCornerButtonEnabled() const;
Но толку от них для решения своей задачи я не вижу...
Подскажите, каким образом получить доступ к cornerWidget
Автор: igor_bogomolov 26.12.2010, 16:12
Цитата(TaIRou @ 26.12.2010, 16:07)
Проблема: при наследовании от QTableView механизмов доступа к cornerWidget я не знаю.
Да их и нет к сожалению.
Загляни вот в эту тему (http://www.prog.org.ru/topic_7085_0.html), может поможет сделать костыль