Re: Вызов метода при передаче имени объекта в функцию
От: Igore Россия  
Дата: 19.09.17 06:54
Оценка: +1
Здравствуйте, Gordon Freeman, Вы писали:

GF>Доброго всем времени дня.

GF>Пытаюс вызвать метод при передаче имени объекта в функцию.
Передача дополнительных данных которых нет в сигнале
Автор: Igore
Дата: 18.02.15


GF>Подгружаю данные в таблицу:

GF>Direction_0_1 = new QTableWidget(0, 0, Direction_0);
Лучше сразу хорошо делать, использовать QTableView

GF>По нажатию кнопки колонки должны изменить ширину по размеру данных. В первом случае всё работает:

GF>connect(resizeallcol, SIGNAL(clicked()), this, SLOT(SetAutocol()));
GF>Во втором нет:
GF>connect(resizeallcol, SIGNAL(clicked()), this, SLOT(SetAutocol(Direction_0_1)));
Слот не может принимать больше параметров чем испускается в сигнале.

GF>Компилятор не ругается, но результат нулевой.

При таком синтаксисе ошибка во время исполнения, в Output выведется, и connect false вернет

GF>P.S. Я в Qt и С++ новичёк. Учу потихоньку. Прошу сильно не ругать.

А зачем тебе передавать table как параметр?
connect(resizeallcol, SIGNAL(clicked()), this, SLOT(SetAutocolDirection_0_1()));
void MainWindow::SetAutocolDirection_0_1()
{
  Direction_0_1->resizeColumnsToContents();
}
// Или даже объединить
connect(resizeallcol, &QPushButton::clicked, this, [this](){Direction_0_1->resizeColumnsToContents();});
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.