我正在开发一个图形界面,它通过串行端口将 8051 与计算机连接起来。我可以通过以下方式从 MainWindow 完美地在端口上写入:
void MainWindow::EnviarComando(QString comando)
{
QByteArray send = (comando + "\r\n").toAscii();
m_port->write(send);
ui->list_log_enviados->addItem(comando);
ui->list_log_enviados->setCurrentRow(ui->list_log_enviados->count()-1);
m_cant_bytes_enviados += send.size();
}
是 m_port 保持连接流的变量。我想从菜单中实例化 QDialog 对象,但仍然能够从这些对话框中发送命令。是否可以?我通过朋友函数、外部变量等进行了尝试,但是由于 MainWindow 对象调用了 QDialog,因此它无论如何都超出了范围。还有其他选择吗?