要在界面1的按钮点击槽函数内获取值,并在界面2内点击按钮使用该值,可以通过以下步骤实现:

  1. 在父对象a.cpp中定义一个成员变量来存储需要共享的值,例如sharedValue

  2. 在界面1的按钮点击槽函数内,将需要共享的值赋给sharedValue

  3. 在界面2的类中,创建一个成员函数来接收sharedValue的值,并在界面2的按钮点击槽函数内使用该值。

下面是一个示例代码:

在a.cpp中:

#include "a.h"
#include "b.h"

void A::createB()
{
    B* b = new B(this);
    // 在界面1的按钮点击槽函数内获取值并赋给sharedValue
    connect(b, &B::buttonClicked, this, [=](int value) {
        sharedValue = value;
    });
    b->show();
}

在b.cpp中:

#include "b.h"

void B::on_button_clicked()
{
    // 界面1的按钮点击槽函数内发射buttonClicked信号,并传递需要共享的值
    emit buttonClicked(42);
}

在b.h中:

#ifndef B_H
#define B_H

#include <QWidget>

class B : public QWidget
{
    Q_OBJECT

public:
    explicit B(QWidget *parent = nullptr);

signals:
    // 定义一个信号用于界面1的按钮点击槽函数内发射
    void buttonClicked(int value);

private slots:
    void on_button_clicked();
};

#endif // B_H

这样,当界面1的按钮点击时,会将值42赋给sharedValue,然后在界面2的按钮点击槽函数内就可以使用sharedValue

qt父对象acpp子对象bcpp在父对象内new出子对象的两个界面12在界面1的按钮点击的槽函数内得到的值如何在界面2内点击按钮使用

原文地址: https://www.cveoy.top/t/topic/iNYD 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录