2014-11-21 55 views
0

我在QtCreator中创建了一个Qt5 UI应用程序。它由一个带有PlainTextEdit的MainWindow和一个名为“Canvas”的自定义小部件组成,用于绘制东西。现在,PlainTextEdit被设置为只读,并且应该被用作日志窗口来处理可能发生在画布窗口小部件中的一些状态消息。为此,我在MainWindow中创建了一个“日志”方法,它将一些文本附加到PlainTextEdit。从另一个部件访问MainWindow中的文本框

但是,我根本找不到从画布窗口部件中访问文本框的方法。我试图获取Canvas的父窗口部件,但以某种方式失败。我尝试将MainWindow类转换为单例并获取它的实例,但这似乎也不起作用。

因此,有关如何创建日志窗口的任何提示,可从全部小部件全局使用?

+0

”某种程度上失败了“,”似乎不起作用“,对于你出错的描述很模糊。你可以再详细一点吗?关于singleton:当你运行你的MainWindow构造函数时,存储'this',并让其他所有的东西像往常一样工作(即确保你不'意外'创建MainWindow的第二个实例)。 – such 2014-11-21 16:30:19

+0

你有没有想过将'PlainTextEdit'的文本存储在另一个'static'成员中?这样你就可以在没有'MainWindow'实例的情况下获取文本。另一种选择是使'MainWindow'类成为'Canvas'小部件的父类。有很多方法可以做到这一点。 – rhodysurf 2014-11-21 17:00:32

+0

谢谢,它现在可行! – snorge 2014-11-21 18:35:43

回答

相关问题