#include "settingsscreen.h" #include "config.h" #include #include "netio.h" SettingsScreen::SettingsScreen(QWidget *parent) : QWidget(parent) { ui.setupUi(this); autoStart = new SwitchButton(ADD_AUTOSTART,this); addDesktopLink = new QPushButton(this); addDesktopLink->setText(QString::fromLocal8Bit("创建桌面快捷方式")); connect(addDesktopLink, &QPushButton::pressed, this, &SettingsScreen::createShortCut); layout = new QHBoxLayout(this); left = new QVBoxLayout(this); addDesktopLink_label = new QLabel(QString::fromLocal8Bit("添加桌面快捷方式"),this); autoStart_label = new QLabel(QString::fromLocal8Bit("开机启动"),this); autoStart->setMaximumSize(100, 50); autoStart->setMinimumSize(50, 25); left->addWidget(autoStart_label); left->addWidget(autoStart); left->addWidget(addDesktopLink_label); left->addWidget(addDesktopLink); left->setAlignment(Qt::AlignCenter); left->setMargin(0); layout->addLayout(left); information = new QLabel; QString device_id = QCryptographicHash::hash(getMachineGUID().toUtf8(), QCryptographicHash::Md5).toHex(); QString inf_str = QString::fromLocal8Bit("硬件ID:\n"); inf_str += device_id; information->setText(inf_str); layout->addWidget(information); } void SettingsScreen::createShortCut() { QString deskTopPath = QStandardPaths::writableLocation(QStandardPaths::DesktopLocation); deskTopPath = deskTopPath + QString::fromLocal8Bit("/办公助手.lnk"); QString srcFile = QApplication::applicationFilePath(); QFile::link(srcFile, deskTopPath); } SettingsScreen::~SettingsScreen() { left->removeWidget(autoStart); left->removeWidget(addDesktopLink); left->removeWidget(addDesktopLink_label); left->removeWidget(autoStart_label); delete autoStart; delete addDesktopLink; delete addDesktopLink_label; delete autoStart_label; layout->removeItem(left); delete left; layout->removeWidget(information); delete information; delete layout; }