lcd->display(QString("roll:%1").arg(roll), this);怎么显示带有变量值的文本
时间: 2024-04-24 18:26:05 浏览: 17
要在`QLCDNumber`控件中显示带有变量值的文本,你可以使用`QString`的`arg()`函数来格式化字符串,并将格式化后的字符串作为参数传递给`display()`方法。
以下是修改后的代码示例:
```cpp
#include <QtWidgets>
class Q : public QWidget
{
Q_OBJECT
public:
Q(QWidget *parent = nullptr)
: QWidget(parent)
{
// 创建主窗口
QVBoxLayout *layout = new QVBoxLayout(this);
setLayout(layout);
setWindowTitle("LCD数字显示");
// 创建 QLCDNumber 控件
lcd = new QLCDNumber(this);
lcd->setDigitCount(6); // 设置数字的位数
lcd->setSegmentStyle(QLCDNumber::Flat); // 设置数字的样式
layout->addWidget(lcd);
// 创建按钮并连接槽函数
QPushButton *btn = new QPushButton("点击按钮", this);
layout->addWidget(btn);
connect(btn, &QPushButton::clicked, this, [this]() {
roll += 100;
lcd->display(QString("roll:%1").arg(roll));
});
}
private:
QLCDNumber *lcd;
int roll = 1500;
};
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
Q q;
q.show();
return app.exec();
}
```
在这个示例中,我们使用`QString`的`arg()`函数来格式化带有变量`roll`值的字符串,然后将其作为参数传递给`display()`方法以更新`QLCDNumber`控件的显示。
希望这个示例能帮助到你!