优化重复打开文件

This commit is contained in:
zhangsheng 2025-05-27 09:28:35 +08:00
parent f7d5ba4bf9
commit 6b8fa0685e

View File

@ -591,6 +591,17 @@ void MainWindow::on_pushButton_save_clicked() {
void MainWindow::on_pushButton_open_clicked() { void MainWindow::on_pushButton_open_clicked() {
map_slot_config.clear();
QList<QAbstractButton *> buttonList = btnGroup_slot->buttons();
for (int i = 0; i < buttonList.count(); i++) {
buttonList[i]->setText("");
}
for (int i = 0; i < SLOT_NUM; i++) {
std::shared_ptr<CardBase> base_ptr = ConfigMgr::Instance()->GetSlotPtr(i + 1);
if(base_ptr != nullptr){
ConfigMgr::Instance()->RemoveCard(base_ptr);
}
}
tsi_config_file = QFileDialog::getOpenFileName(this, tr("选择文件"), tr(""), tr("*.json")); tsi_config_file = QFileDialog::getOpenFileName(this, tr("选择文件"), tr(""), tr("*.json"));
QFileInfo fileinfo; QFileInfo fileinfo;
fileinfo = QFileInfo(tsi_config_file); fileinfo = QFileInfo(tsi_config_file);
@ -605,7 +616,6 @@ void MainWindow::on_pushButton_open_clicked() {
return; return;
} }
ConfigMgr::Instance()->Load(tsi_config_file); ConfigMgr::Instance()->Load(tsi_config_file);
QList<QAbstractButton *> buttonList = btnGroup_slot->buttons();
for (int i = 0; i < buttonList.count(); i++) { for (int i = 0; i < buttonList.count(); i++) {
std::shared_ptr<CardBase> base_ptr = ConfigMgr::Instance()->GetSlotPtr(i + 1); std::shared_ptr<CardBase> base_ptr = ConfigMgr::Instance()->GetSlotPtr(i + 1);
if(base_ptr != nullptr){ if(base_ptr != nullptr){