c++ - 如何让 UI 对象仅在单击按钮后出现在对话框中

标签 c++ qt user-interface

  1. 我有一个对话框,最初有几个按钮,我们称它们为“写入”、“查看”、“确定”和“取消”。

  2. 应该的方式是在创建对话框时只有这三个按钮,仅此而已。

  3. 当 Write 按钮被取消时,它应该在按钮上方的窗口中创建一个 QLineEdit 对象,用户可以在其中输入新字符串,然后单击 OK 时将添加到外部 QStringList

  4. 单击“ View ”时,LineEdit 应该消失(如果它已启动)并出现一个QListView,以查看该列表中的所有内容。

  5. 问题是,我知道如何使用 hide() 让对话框中已有的对象不显示。

  6. 但我无法弄清楚如何让当前不在桌面上的对象出现。我是 Qt 的新手,所以它可能很容易被我无意中忽略了(事实上我希望是这样)。

    有人可以给点建议吗?谢谢!

最佳答案

正常创建项目然后设置:

ui->control->setVisible(false);

在您创建 UI 之后(在 ui->setupUi(this); 之后)可能在构造函数中(以防您使用由 Qt Creator 生成的代码)。

当您需要它们时:

ui->control->setVisible(true);

文档:

http://qt-project.org/doc/qt-4.8/qwidget.html#visible-prop

关于c++ - 如何让 UI 对象仅在单击按钮后出现在对话框中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22351938/

相关文章:

C++:将子类转换为父类时失去对子类成员的访问权限

javascript - 树菜单?在 JS 中?

ios - 获取所有已加载的 uiviewcontroller

c++ - 无法在 QThread 与多个 Qthread 的 finished() 信号之间进行连接

c++ - 自动检查我的应用程序的新版本

javascript - 创建后如何将项目添加到 QML 网格?

user-interface - WebGL 中的完整 UI 小部件工具包渲染

c++ - 首先按给定顺序打印所有数字,然后使用数组打印所有字符和其他符号

c++ - SDL_WM_SetCaption 不工作

c++ - 如何在未来的 C++ 11 中多次使用 get() 或如何获取 vector 值?