这个没用,再换一种
时间: 2024-01-17 15:03:25 浏览: 58
做一个没用的超级终端
你可以尝试这样修改代码:
```
void menu::on_spinBox_valueChanged(int arg1) {
QString labelText = ui->label->text(); // 获取当前label的文本
int number = 0;
int index = labelText.indexOf(QRegExp("\\d+")); // 查找label中第一个数字的位置
if (index != -1) { // 如果label中有数字
number = labelText.mid(index, labelText.length() - index).toInt(); // 获取数字的值
int delta = arg1 - ui->spinBox->value(); // 获取spinBox的值变化量
labelText.replace(index, QString::number(number + delta).length(), QString::number(number + delta)); // 将数字加上变化量并替换为新的值
ui->label->setText(labelText); // 更新label的文本
}
}
```
这段代码会在spinBox的值发生变化后,获取spinBox的值变化量,然后将label中的第一个数字加上这个变化量,而不会改变其他汉字。
阅读全文