OutputConsole->setText(&text); t-6ren">
gpt4 book ai didi

c++ - 在 QTextEdit 或 Qt-Creator 的 connect() 中使用指针

转载 作者:太空宇宙 更新时间:2023-11-04 12:00:13 34 4
gpt4 key购买 nike

早上好我希望 QTextEdit 在 Qtring 更改时动态更改值。

例如:

QString text = "Test2";
ui->OutputConsole->setText(&text);
text = "Test2"; //Value in QTextEdit OutputConsole change dynamically and display "Test2"

我也想用connect()函数,但是不知道怎么用,网上找了一些例子:

QString Text= "Test";
connect(Text, SIGNAL(changeText(QString)), ui->OutputConsole, SLOT(labelChangeText(QString)));

我想知道是否可行以及如何实现?

预先感谢您的帮助,

最佳答案

您可以创建自己的类,它将在文本更改时包装您的文本和信号

class StringWrapper : public QObject
{
Q_OBJECT
public:
explicit StringWrapper(QObject *parent = nullptr);

void SetString(const QString& str);

private:
QString m_str;

signals:
void TextChanged(QString str);

public slots:
};

void StringWrapper::SetString(const QString &str)
{
if (str != m_str) {
m_str = str;
emit TextChanged(m_str);
}
}

然后连接到你的标签

StringWrapper m_strWrapper;
connect(&m_strWrapper, SIGNAL(TextChanged(QString)), ui->OutpuConsole, SLOT(setText(QString)));

关于c++ - 在 QTextEdit 或 Qt-Creator 的 connect() 中使用指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52774397/

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