我有一个名为" mainWindow"。
的Qt-GUI在构造函数中,我使用了一个名为" testclass"的类,它使用GUI中的一个小部件。
mainWindow::mainWindow(QWidget *parent): QMainWindow(parent)
{
testclass window_test(ui.Widget);
window_test.function();
}
现在我想访问" window_test"的功能。在构造函数之外。
我尝试添加
testclass window_test(ui.Widget);
作为mainWindow类的类成员,但我无法在那里访问ui.Widget。
处理这种情况的最佳方法是什么?
答案 0 :(得分:0)
您是否在mainWindow的头文件中声明了函数的原型?它可能只是一个范围问题。
答案 1 :(得分:0)
我将“testclass”的实例添加到mainWindow.h但我必须使用标准构造函数。因此,我宣布了一个新的函数来将小部件传递给类。
答案 2 :(得分:0)
如果必须将参数传递给成员变量window_test
的构造函数,可以这样做:
mainWindow::mainWindow(QWidget *parent) : QMainWindow(parent),
window_test(ui.Widget)
{
}
成员变量的声明只是
class mainWindow {
...
testwindow window_test;
};
如果ui
本身是具有构造函数的mainWindow
的成员变量,则声明的顺序可能很重要。然后应在ui
之前声明window_test
,以便在使用它时构建它。