Qt如何将行编辑连接到进度条
Qt how to connecto Line Edit to progress bar
我对QT和C++很陌生,我正在尝试将行编辑连接到进度条,因此当我在行编辑中输入一些整数值时,进度条将显示它。我无法实现它。这就是我正在尝试的:
connect(ui->batterycapacity,&QLineEdit::textChanged, ui->progressBar,ui->progressBar->setValue(ui->batterycapacity->text().toInt()));
或者这个:
connect(ui->batterycapacity,&QLineEdit::textChanged, ui->progressBar,ui->progressBar->&QProgressBar::setValue(ui->batterycapacity->text().toInt()));
电池容量是我的线路编辑。如何将这 2 个连接在一起?事先谢谢。
你很接近。由于信号的参数与插槽的参数不同,您需要用toInt
来调整它,但你不能简单地将任意代码粘贴在参数中并期望C++在信号更改时执行它。
您需要将代码段包装在 lambda 表达式中:
connect(ui->batterycapacity, &QLineEdit::textChanged, ui->progressBar,
[=](const QString& text) {
ui->progressBar->setValue(text.toInt()));
});
lambda 将接收textChanged
信号的参数并将其传递给setValue
方法。 前面的[=]
位告诉编译器按值捕获ui
的值,以便可以在 lambda 内部访问它。
相关文章:
- 当套接字连接断开时检测C/C++Unix
- 在createdialog创建的窗口中捕获用于编辑控件的OnMouseMove消息
- 无法在windows上使用mingw将sqlite3与c连接
- 编辑文件中的文本
- 到连接组件算法的问题(递归)
- QTcpSocket在不阻塞GUI的情况下重新连接到服务器
- 无法在C++中建立与MySQL数据库的连接
- PC中的程序和PHONE中的本机描述应用程序之间的数据连接
- 在Qt Creator中,如何在连接到正在运行的进程后查看控制台输出
- 有没有办法在远程设备上打开和编辑visual Studio 2017解决方案
- 连接 dockerized 模型和 dockerized 数据库时出现"无法 SQLConnect"错误
- 使用 bfs 解决连接组件问题时得到错误的答案
- 在C++的两个字符串中连接以逗号分隔的唯一值
- 如何修复valgrind启动时的致命错误(与libc6-dbg和libc6-dbg:i386连接)
- C++应用程序 MySQL odbc 数据库连接错误:在引发"otl_tmpl_exception<>"实例后终止调用
- OSX蓝牙打开RFCOMMChannelAsync声称已连接,但未建立连接,并且从未调用过委托
- 在 libcurl 连接池中预创建连接
- SetDlgItemInt 不会更改嵌入资源的编辑框
- Qt如何将行编辑连接到进度条
- Qt无法手动连接到任何插槽(UI编辑器)