-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathfrmsoftwareinfo.cpp
More file actions
95 lines (86 loc) · 2.79 KB
/
frmsoftwareinfo.cpp
File metadata and controls
95 lines (86 loc) · 2.79 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#include "frmsoftwareinfo.h"
#include "ui_frmsoftwareinfo.h"
#include "./AppConfig/myapp.h"
frmSoftwareInfo::frmSoftwareInfo(QWidget *parent) :
QDialog(parent),
ui(new Ui::frmSoftwareInfo)
{
ui->setupUi(this);
InitStyle();
}
frmSoftwareInfo::~frmSoftwareInfo()
{
delete ui;
}
void frmSoftwareInfo::InitStyle()
{
//设置窗体标题栏隐藏
this->setWindowFlags(Qt::FramelessWindowHint | Qt::WindowSystemMenuHint | Qt::WindowMinMaxButtonsHint);
location = this->geometry();
max = false;
mousePressed = false;
QPixmap pixmap(myApp::AppPath+myApp::LogoImage);
ui->lb_ICO->setPixmap(pixmap);
//安装事件监听器,让标题栏识别鼠标双击
ui->lab_Title->installEventFilter(this);
IconHelper::Instance()->SetIcon(ui->btnMenu_Close, QChar(0xf00d), 10);
//IconHelper::Instance()->SetIcon(ui->btnMenu_Max, QChar(0xf096), 10);
IconHelper::Instance()->SetIcon(ui->btnMenu_Min, QChar(0xf068), 10);
//IconHelper::Instance()->SetIcon(ui->btnMenu, QChar(0xf0c9), 10);
IconHelper::Instance()->SetIcon(ui->lab_Ico, QChar(0xf015), 12);
ui->textBrowser->append("<p style='margin:5px'>名称:"+myApp::SoftTitle);
ui->textBrowser->append("版本号:"+myApp::SoftVersion);
ui->textBrowser->append("网址:"+myApp::WebStation);
ui->textBrowser->append("电话:"+myApp::telephone);
ui->textBrowser->append("手机:"+myApp::cellphone+"<p>");
ui->label_2->setText(myApp::CompanyName);
}
bool frmSoftwareInfo::eventFilter(QObject *obj, QEvent *event)
{
if (event->type() == QEvent::MouseButtonDblClick) {
this->on_btnMenu_Max_clicked();
return true;
}
return QObject::eventFilter(obj, event);
}
void frmSoftwareInfo::mouseMoveEvent(QMouseEvent *e)
{
if (mousePressed && (e->buttons() && Qt::LeftButton) && !max) {
this->move(e->globalPos() - mousePoint);
e->accept();
}
}
void frmSoftwareInfo::mousePressEvent(QMouseEvent *e)
{
if (e->button() == Qt::LeftButton) {
mousePressed = true;
mousePoint = e->globalPos() - this->pos();
e->accept();
}
}
void frmSoftwareInfo::mouseReleaseEvent(QMouseEvent *)
{
mousePressed = false;
}
void frmSoftwareInfo::on_btnMenu_Close_clicked()
{
this->close();
}
void frmSoftwareInfo::on_btnMenu_Max_clicked()
{
if (max) {
this->setGeometry(location);
IconHelper::Instance()->SetIcon(ui->btnMenu_Max, QChar(0xf096), 10);
ui->btnMenu_Max->setToolTip("最大化");
} else {
location = this->geometry();
this->setGeometry(qApp->desktop()->availableGeometry());
IconHelper::Instance()->SetIcon(ui->btnMenu_Max, QChar(0xf079), 10);
ui->btnMenu_Max->setToolTip("还原");
}
max = !max;
}
void frmSoftwareInfo::on_btnMenu_Min_clicked()
{
this->showMinimized();
}