Слот setShowGride не работает в моем приложении

Вот это программа и здесь скриншот.

Вот также код для showGridAction (где я вижу проблемы в этом) внутри: void MainWindow::createActions() функция (в MainWindow.cpp):

showGridAction = new QAction(tr("&Show Grid"), this);
showGridAction -> setCheckable(true);
showGridAction -> setChecked(spreadsheet -> showGrid());
showGridAction -> setStatusTip(tr("Show or hide the spreadsheet's"" grid"));
connect(showGridAction, SIGNAL(toggled(bool)),
spreadsheet, SLOT(setShowGride(bool)));

#if QT_VERSION < 0x040102
// workaround for a QTableWidget bug in Qt 4.1.1
connect(showGridAction, SIGNAL(toggled(bool)),
spreadsheet->viewport(), SLOT(update()));
#endif

Мои вопросы:

1- Сначала я думаю, что часть #if QT_VERSION < 0x040102 до тех пор #endif больше не нужен, потому что я использую Qt 5.9. Вы тоже так думаете?

2- Этот код не работает в действительности. Как вы можете видеть на скриншоте выше, установите и снимите флажок Show Grid опция не вносит изменений! Как сделать так, чтобы приложение работало, пожалуйста?

3- В коде есть слот с именем setShowGride(bool), Откуда это? Он не будет выделен, когда я нажму на него, а также при нажатии F2 в теме! Вероятно, это является источником проблемы для вышеупомянутой опции, чтобы не функционировать.
Как это исправить пожалуйста?

0

Решение

В коде есть опечатка. Если это исправлено, приложение работает правильно. использование setShowGrid не setShowGride,

И насчет этой части кода, да, она не нужна, потому что вы используете Qt 5.9.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]