【发布时间】:2014-11-08 09:58:40
【问题描述】:
假设我有一个主窗口。
然后,当我单击一个按钮时,我希望打开一个子窗口并隐藏主窗口。 然后,当我关闭该子窗口时,我希望主窗口重新出现。
现在我正在通过以下方式打开那个子窗口:
s=new SignUpWindow(NULL,temp);
s->show();
其中 s 是我的主窗口的私有指针。
当我尝试这样做时:
s=new SignUpWindow(this,temp);
s->show();
s 窗口不显示。
这是它的构造函数在它的头部的签名:
SignUpWindow (QWidget* parent=NULL, Netflix *n=NULL);
有人能解释一下为什么我们在标题中将 parent 设置为 NULL 吗? 当我尝试使用它的参数并得到如下错误时,我有时会遇到问题:
候选人期望 1 个参数,2 个提供 qt
感谢您的所有帮助 -一个疲倦的大学生刚刚学习qt
更新 以下基本上是我的主窗口的标题:
class LoginWindow : public QWidget
{
Q_OBJECT
public:
LoginWindow (QWidget* parent=NULL, Netflix *n=NULL);
public slots:
void loggedIn();
void newUser();
void quitPushed();
private:
QPushButton *quitButton, *loginButton, *newUserButton;
QLineEdit *login;//this is the text area that takes in the loginID
};
#endif
然后有一个功能是通过单击打开一个新窗口的按钮来启动的:
void LoginWindow::newUser()
{
s=new SignUpWindow(NULL,temp);
s->show();
//this->hide();
}
如何将 s 连接到 LogInWindow?
更新 2 SignUpWINdow.h:
class SignUpWindow : public QWidget
{
Q_OBJECT
public:
SignUpWindow (QWidget* parent=NULL, Netflix *n=NULL);
public slots:
private:
};
SignUpWindow.cpp:
SignUpWindow::SignUpWindow (QWidget* parent, Netflix *n) : QWidget (parent)
{
QVBoxLayout *mainLayout = new QVBoxLayout;
//then i add things like buttons and group boxes and etc but no dialogs...
}
我从未为我的 SignUpWindow 创建对话框。我只是添加了布局和按钮等。
【问题讨论】:
标签: c++ qt user-interface