Я уверен, что моя проблема очень проста, но я просто не могу ее отладить !!
Я пытаюсь подключить виджет spinBox к пользовательской функции, которая устанавливает com-порт моего экземпляра QSerialPort на Qt .
Мой конструктор главного окна, я пытаюсь подключить свой com_spinBox к моей пользовательской функции setComPort ():
QSerialPort *serial;
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this); // Here by default. Takes a pointer to mainwindow as argument
serial = new QSerialPort(this); // this (mainwindow) is parent
connect(ui->com_spinBox, SIGNAL(valueChanged(QString)),
this, SLOT(MainWindow::setComPort()));
serial->setBaudRate(QSerialPort::Baud9600);
serial->setDataBits(QSerialPort::Data8);
serial->setParity(QSerialPort::NoParity);
serial->setStopBits(QSerialPort::OneStop);
serial->setFlowControl(QSerialPort::NoFlowControl);
qDebug() << "is " << serial->open(QSerialPort::ReadOnly);
qDebug() << "err " << serial->error();
}
Я определяю свою функцию в моем MainWindow. cpp (и объявляю ее в .h) тоже:
void MainWindow::setComPort()
{
qDebug() << "fu";
}
Я не вижу ничего на консоли отладки при изменении значения моего spinBox ... это проблема синтаксиса? Я знаю, что qDebug работает, поскольку я могу напечатать другие вещи в моем конструкторе без проблем. Спасибо!