#include "Group.h" #include "ui_Group.h" #include #include #include Group::Group(int Id, const QString& imagePath1, const QString& imagePath2, const QStringList& textList, QWidget* parent) : QWidget(parent), ui(new Ui::Group) { ui->setupUi(this); QPixmap pixmap1(imagePath1); QPixmap pixmap2(imagePath2); ui->Imagewidget_left->setPixmap(pixmap1); ui->Imagewidget_right->setPixmap(pixmap2); ui->DatacomboBox->addItems(textList); ui->Imagewidget_left->setProperty("groupId", Id); ui->Imagewidget_right->setProperty("groupId", Id); // 存储参数到 QSettings saveGroupSettings(Id, imagePath1, imagePath2, textList); initForm(); } Group::~Group() { delete ui; } void Group::initForm() { ui->Imagewidget_left->installEventFilter(this); ui->Imagewidget_right->installEventFilter(this); } bool Group::eventFilter(QObject *obj, QEvent *event) { if (event->type() == QEvent::MouseButtonDblClick) { QMouseEvent* mouseEvent = static_cast(event); if (mouseEvent->button() == Qt::LeftButton) { int groupId = obj->property("groupId").toInt(); QSettings settings("YourCompany", "YourApplication_"); settings.setValue("GroupId", groupId); if (obj == this->ui->Imagewidget_left) { settings.setValue("Index", 1); } else if (obj == this->ui->Imagewidget_right) { settings.setValue("Index", 2); } return true; } } return QWidget::eventFilter(obj, event); } void Group::saveGroupSettings(int Id, const QString& imagePath1, const QString& imagePath2, const QStringList& textList) { QSettings settings("YourOrganization", "YourApplication"); settings.beginGroup(QString::number(Id)); settings.setValue("ImagePath1", imagePath1); settings.setValue("ImagePath2", imagePath2); settings.setValue("TextList", textList); settings.endGroup(); }