Newer
Older
PhaseMeasure / SetConfig.cpp
TAN YUE on 7 Feb 2022 1 KB 20220207 细节完善
#include "SetConfig.h"
#include "ui_SetConfig.h"

#include <QFile>
#include <QFileDialog>
#include <QDesktopServices>
#include <QPushButton>

SetConfig::SetConfig(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::SetConfig)
{
    ui->setupUi(this);

    // 加载样式表
    QFile file(QApplication::applicationDirPath() + "/qss/dlgdark.css");
    if (file.open(QFile::ReadOnly)) {
        QString qss = QLatin1String(file.readAll());
        this->setStyleSheet(qss);
        file.close();
    }

    init();
}
void SetConfig::init()
{
    setAttribute(Qt::WA_DeleteOnClose); // 窗口关闭后释放本对象

    setWindowFlags(Qt::Window | Qt::FramelessWindowHint
                   | Qt::WindowSystemMenuHint | Qt::WindowMinimizeButtonHint
                   | Qt::WindowMaximizeButtonHint);

    this->setProperty("dialog", true);

    // 修改名称
    ui->buttonBox->button(QDialogButtonBox::Ok)->setText("确定");
    ui->buttonBox->button(QDialogButtonBox::Cancel)->setText("取消");

    ui->ipInput->setText(SettingConfig::getInstance().DEVICE_HOST);
    ui->devInput->setText(QString::number(SettingConfig::getInstance().DEVICE_PORT));
    ui->listenInput->setText(QString::number(SettingConfig::getInstance().LISTEN_PORT));
    ui->logInput->setText(SettingConfig::getInstance().BASE_LOG_PATH);
}
SetConfig::~SetConfig()
{
    delete ui;
}

void SetConfig::on_buttonBox_accepted()
{
    SettingConfig::getInstance().setConProperty("net", "deviceHost", ui->ipInput->text());
    SettingConfig::getInstance().setConProperty("net", "devicePort", ui->devInput->text());
    SettingConfig::getInstance().setConProperty("net", "listenPort", ui->listenInput->text());
    SettingConfig::getInstance().setConProperty("log", "basePath", ui->logInput->text());
    SettingConfig::getInstance().init();
}