You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

65 lines
1.9 KiB
C++

#include "qaddmodel.h"
#include <QFileDialog>
#include <QMessageBox>
#include <QPixmap>
#define WF_HUBMODEL_ID "hubID"
#define WF_HUBMODEL_DIAMETER "diameter"//轮毂直径
#define WF_HUBMODEL_HEIGHT "height"//轮毂厚度
#define WF_HUBMODEL_CHANNELS "channels"
#define WF_HUBMODEL_FILEPATH "filepath"
#pragma execution_character_set("utf-8")
QAddModel::QAddModel(QWidget *parent)
: QDialog(parent)
{
ui.setupUi(this);
setWindowIcon(QIcon(":/image/leaper"));
setWindowFlags(Qt::WindowCloseButtonHint);
connect(ui.wf_model_add_button, SIGNAL(clicked()), this, SLOT(SlotAccept()));
connect(ui.wf_cancel, SIGNAL(clicked()), this, SLOT(SlotCancel()));
QRegExp regExpNum("((6553[0-5])|[655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{3}|[1-9][0-9]{2}|[1-9][0-9]|[0-9])");
ui.lineEdit_rota->setValidator(new QRegExpValidator(regExpNum, this));
ui.wf_model_edit_diameter->setValidator(new QRegExpValidator(regExpNum, this));
ui.wf_model_edit_ply->setValidator(new QRegExpValidator(regExpNum, this));
}
QAddModel::~QAddModel()
{
}
QMap<QString, QVariant> QAddModel::getData()
{
QMap<QString, QVariant> map;
map.insert(WF_HUBMODEL_ID, QVariant(ui.wf_model_edit->text()));
map.insert(WF_HUBMODEL_DIAMETER, QVariant(ui.wf_model_edit_diameter->text().toDouble()));
map.insert(WF_HUBMODEL_HEIGHT, QVariant(ui.wf_model_edit_ply->text().toDouble()));
map.insert("rotate", QVariant(ui.lineEdit_rota->text().toDouble()));
return map;
}
void QAddModel::SlotAccept()
{
if (ui.wf_model_edit->text().isEmpty() || ui.wf_model_edit_diameter->text().isEmpty() || ui.wf_model_edit_ply->text().isEmpty())
{
QMessageBox::information(this, tr("提醒"), tr("信息不能为空!"), QMessageBox::Yes | QMessageBox::No);
return;
}
QDialog::accept();
}
void QAddModel::SlotCancel()
{
QDialog::close();
}
void QAddModel::SetClearData()
{
ui.wf_model_edit->setText("");
ui.wf_model_edit_diameter->setText("");
ui.wf_model_edit_ply->setText("");
}