c++ - 连接不同关系的信号和槽

标签 c++ qt connect signals-slots

首先,我想说我是 GUI 编程的菜鸟。我使用 Qt 5.4。

我在观看 voidRealms 视频时想出了这段代码。

connect(ui->horizontalSlider,SIGNAL(sliderMoved(int)),ui->progressBar,SLOT(setValue(int)));

显然,这将 slider 移动与进度条填充联系起来。这实际上像

进度条填充 <- slider 移动。

我怎样才能建立不同的关系?喜欢

进度条填充 <- (slidermovement)/2 或类似的东西。

最佳答案

您需要为此目的创建新插槽。 但是在 C++ 11 和 Qt 5 风格中你可以使用 labmdas!对于这么短的函数来说非常舒服。 在你的情况下:

connect(ui->horizontalSlider, &QSlider::sliderMoved, this, [this](int x) {
this->ui->progressBar->setValue(x / 2);
});

关于c++ - 连接不同关系的信号和槽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30994935/

相关文章:

c++ - Makefile 通配符依赖项

c++ - 定义构造函数的两种不同方式

scripting - 如何在 "openssl s_client -connect"内强制退出?

c++ - 长时间例程后的 Qt 事件卡住了我的应用程序一段时间

ruby - QtRuby 使用参数/参数连接信号和槽

gruntjs - 将 gzip 压缩应用于 grunt-contrib-connect 提供的文件

iphone - Facebook 页面帐户 - 添加应用

c++ - 无法弄清楚如何执行此代码

c++ - 为 'virtual void' 指定的返回类型有冲突

Qt:QSqlTableModel + QTableView 与 PostgreSQL 同步