Qt 中使用 QComboBox 和 枚举常量实现 Switch 语句调用
在 Qt 中,可以使用QComboBox的currentText()函数来获取当前选中的文本,然后使用QString的compare()函数来比较字符串。根据选中的文本进行switch调用。
为了方便管理和使用,可以定义一个枚举常量来表示不同的模式:
enum Mode {
None,
SleepMode,
DailyMode,
EnergySavingMode
};
然后,可以使用以下代码来获取当前选中的模式并进行switch调用:
QString modeText = ui->comboBox->currentText();
Mode mode;
if (modeText.compare("无") == 0) {
mode = None;
} else if (modeText.compare("睡眠模式") == 0) {
mode = SleepMode;
} else if (modeText.compare("日常模式") == 0) {
mode = DailyMode;
} else if (modeText.compare("节能模式") == 0) {
mode = EnergySavingMode;
}
switch (mode) {
case None:
// 无模式的处理逻辑
break;
case SleepMode:
// 睡眠模式的处理逻辑
break;
case DailyMode:
// 日常模式的处理逻辑
break;
case EnergySavingMode:
// 节能模式的处理逻辑
break;
default:
// 默认处理逻辑
break;
}
使用枚举常量可以使代码更易读和维护。mode的类型是Mode。
原文地址: https://www.cveoy.top/t/topic/fCX4 著作权归作者所有。请勿转载和采集!