gpt4 book ai didi

c++ - 将 QString 从父 QT 传递给子 QT

转载 作者:行者123 更新时间:2023-11-28 04:41:09 33 4
gpt4 key购买 nike

我需要在我的程序中从父窗口到子窗口获取一个 QString。

 menu=new user(this);  menu->show();

这就是我创建子窗口的方式。我有 QString Username; 在我的父级中声明为“login”。

这就是我尝试将 QString 传递到我的新窗口的方式:

 QString loginnn=((login*)this->parent())->Username 

但是我得到了错误:

"login was not declared in this scope"

虽然我已经将“login.h”文件包含到我的“user.h”文件中,并且“login”也被标记为粉红色,而且 QT 知道它是什么。

感谢您的帮助!

最佳答案

最简单的解决方案是在对象构造期间发送对所需字符串的引用

你应该简单地这样做:

menu = new user(this, username);
menu->show();

菜单.cpp

class User
{
private:
QString &_login;
public:
User(..., QString &login):
_login(login)
}

现在你应该可以使用这个字符串了,无论如何在构建过程中给出它都是有意义的

关于c++ - 将 QString 从父 QT 传递给子 QT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50171273/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com