gpt4 book ai didi

c++ - 如何访问我添加到此 Qt 示例中的 QLineEdit 小部件?

转载 作者:行者123 更新时间:2023-11-30 05:20:52 31 4
gpt4 key购买 nike

我关注了这个 Qt tutorial关于信号和槽,包括您删除可以在 Qt Designer 中自动创建的连接的部分,而是在 mainwindow.cpp 中手动键入 connect 函数。我想在移动教程的 QSlider 更改我添加的 QLineEdit 时创建自己的插槽,所以我这样做了:

  1. 我在 Qt Designer 中的 mainwindow.ui 中添加了一个名为 lineEditQLineEdit 小部件。
  2. mainwindow.hMainWindow 类定义中,我在类的底部添加了它。

    public slots:
    void changeLineEdit() {
    ui->lineEdit->setText("Value was changed");
    }
  3. 在 mainwindow.cpp 的 MainWindow 构造函数中,我添加了以下内容:(ui->horizo​​ntalSlider 是教程中制作的 QSlider。)

    connect(ui->horizontalSlider, SIGNAL(valueChanged(int)), SLOT(changeLineEdit()));

当我尝试构建项目时,遇到了 9 个错误,其中之一是“使用未定义类型 Ui::MainWindow”。我在这次编辑中做错了什么?
MainWindow 类定义有一个私有(private)指针 Ui::Mainwindow *ui,所以我认为插槽定义会访问 ui 指针,因此lineEdit 小部件包含在那里。

最佳答案

如果您在 header 中实现插槽,请确保在您的类 header 中也包含 UI::MainWindow 的 header 。通常我会在 cpp 文件中实现我的插槽,但这不是必需的。

关于c++ - 如何访问我添加到此 Qt 示例中的 QLineEdit 小部件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40474597/

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