问题描述
|
我正在开发一个项目,我首先开始在没有GUI的情况下进行制作,但是现在我将其移植到Qt,但是我遇到了问题。
我在单独的文件中有\“ old \”实现,并且尝试从中访问MainWindow小部件,以便输出到QTextBrowser,但我不能这样做。
在mainwindow.cpp中,我有以下内容:
void MainWindow::addString(char* text)
{
std::string input = text;
ui->textBrowser->append(QString::fromStdString(input));
return;
}
在mainwindow.h中:
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private slots:
void on_showWelcome_triggered();
void on_showArithmetic_triggered();
private:
Ui::MainWindow *ui;
public slots:
void btnResolveClicked();
void btnClearClicked();
void hideAll();
void addString(char* output);
};
#endif // MAINWINDOW_H
并在simple_mode.cpp中:
void test()
{
MainWindow *gui = new MainWindow;
gui->addString(\"WORKS\");
MainWindow:: = gui;
}
但是,这并没有在文本浏览器中附加\“ WORKS \”,这是我所需要的,我认为它会将其添加到文本浏览器的另一个实例中,该实例与主窗口不同。
编辑:
我想做的是直接从simple_mode.cpp到textbrowser追加一行文本。
顺便说一句,simple_mode是在没有任何Qt辅助的情况下编写的,这就是为什么我使用std字符串,并且当前textbrowser小部件充当虚拟终端输出屏幕的原因,而不是像以前那样使用printf,我想添加行到文本浏览器。但是,我已经找到了解决方法,现在不需要了。
我需要帮助
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)