From 8dc5fcc4620216685a28244f6ae01770fcf239b0 Mon Sep 17 00:00:00 2001 From: Mentalflow <312902918@qq.com> Date: Sun, 15 Jan 2023 21:27:05 +0800 Subject: [PATCH 1/3] Add .gitignore and LICENSE. --- .gitignore | 172 +++++++++++++++++++++++++++++ LICENSE | 9 ++ TcpClient.pro.user | 267 --------------------------------------------- 3 files changed, 181 insertions(+), 267 deletions(-) create mode 100644 .gitignore create mode 100644 LICENSE delete mode 100644 TcpClient.pro.user diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..38eb6e9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,172 @@ +# ---> Qt +# C++ objects and libs +*.slo +*.lo +*.o +*.a +*.la +*.lai +*.so +*.so.* +*.dll +*.dylib + +# Qt-es +object_script.*.Release +object_script.*.Debug +*_plugin_import.cpp +/.qmake.cache +/.qmake.stash +*.pro.user +*.pro.user.* +*.qbs.user +*.qbs.user.* +*.moc +moc_*.cpp +moc_*.h +qrc_*.cpp +ui_*.h +*.qmlc +*.jsc +Makefile* +*build-* +*.qm +*.prl + +# Qt unit tests +target_wrapper.* + +# QtCreator +*.autosave + +# QtCreator Qml +*.qmlproject.user +*.qmlproject.user.* + +# QtCreator CMake +CMakeLists.txt.user* + +# QtCreator 4.8< compilation database +compile_commands.json + +# QtCreator local machine specific files for imported projects +*creator.user* + +*_qmlcache.qrc + +# ---> C++ +# Prerequisites +*.d + +# Compiled Object files +*.slo +*.lo +*.o +*.obj + +# Precompiled Headers +*.gch +*.pch + +# Compiled Dynamic libraries +*.so +*.dylib +*.dll + +# Fortran module files +*.mod +*.smod + +# Compiled Static libraries +*.lai +*.la +*.a +*.lib + +# Executables +*.exe +*.out +*.app + +# ---> C +# Prerequisites +*.d + +# Object files +*.o +*.ko +*.obj +*.elf + +# Linker output +*.ilk +*.map +*.exp + +# Precompiled Headers +*.gch +*.pch + +# Libraries +*.lib +*.a +*.la +*.lo + +# Shared objects (inc. Windows DLLs) +*.dll +*.so +*.so.* +*.dylib + +# Executables +*.exe +*.out +*.app +*.i*86 +*.x86_64 +*.hex + +# Debug files +*.dSYM/ +*.su +*.idb +*.pdb + +# Kernel Module Compile Results +*.mod* +*.cmd +.tmp_versions/ +modules.order +Module.symvers +Mkfile.old +dkms.conf + +# ---> macOS +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..2071b23 --- /dev/null +++ b/LICENSE @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/TcpClient.pro.user b/TcpClient.pro.user deleted file mode 100644 index 8416732..0000000 --- a/TcpClient.pro.user +++ /dev/null @@ -1,267 +0,0 @@ - - - - - - EnvironmentId - {d3fed20c-1c94-44fc-8f6a-4dbf39b54775} - - - ProjectExplorer.Project.ActiveTarget - 0 - - - ProjectExplorer.Project.EditorSettings - - true - false - true - - Cpp - - CppGlobal - - - - QmlJS - - QmlJSGlobal - - - 2 - UTF-8 - false - 4 - false - 80 - true - true - 1 - false - true - false - 0 - true - true - 0 - 8 - true - false - 1 - true - true - true - *.md, *.MD, Makefile - false - true - - - - ProjectExplorer.Project.PluginSettings - - - true - false - true - true - true - true - - - 0 - true - - -fno-delayed-template-parsing - - true - Builtin.BuildSystem - - true - true - Builtin.DefaultTidyAndClazy - 4 - - - - true - - - - - ProjectExplorer.Project.Target.0 - - Desktop - Desktop Qt 6.2.3 MinGW 64-bit - Desktop Qt 6.2.3 MinGW 64-bit - qt.qt6.623.win64_mingw_kit - 2 - 0 - 0 - - 0 - C:\Users\25761\Desktop\Error-in-"-Util.asciify("build-C:\Users\25761\Desktop\tcpclient\TcpClient-Desktop_Qt_6_2_3_MinGW_64_bit-Profile")":-SyntaxError:-Expected-token-`)' - C:/Users/25761/Desktop/Error-in-"-Util.asciify("build-C:/Users/25761/Desktop/tcpclient/TcpClient-Desktop_Qt_6_2_3_MinGW_64_bit-Profile")":-SyntaxError:-Expected-token-`)' - - - true - QtProjectManager.QMakeBuildStep - false - - - - true - Qt4ProjectManager.MakeStep - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - clean - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - false - - Profile - Qt4ProjectManager.Qt4BuildConfiguration - 0 - 0 - 0 - - - C:\Users\25761\Desktop\Error-in-"-Util.asciify("build-C:\Users\25761\Desktop\tcpclient\TcpClient-Desktop_Qt_6_2_3_MinGW_64_bit-111")":-SyntaxError:-Expected-token-`)' - C:/Users/25761/Desktop/Error-in-"-Util.asciify("build-C:/Users/25761/Desktop/tcpclient/TcpClient-Desktop_Qt_6_2_3_MinGW_64_bit-111")":-SyntaxError:-Expected-token-`)' - - - true - QtProjectManager.QMakeBuildStep - false - - - - true - Qt4ProjectManager.MakeStep - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - clean - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - false - - 111 - Qt4ProjectManager.Qt4BuildConfiguration - 0 - 0 - - - C:\Users\25761\Desktop\build-TcpClient-Desktop_Qt_6_2_3_MinGW_64_bit-111 - C:/Users/25761/Desktop/build-TcpClient-Desktop_Qt_6_2_3_MinGW_64_bit-111 - - - true - QtProjectManager.QMakeBuildStep - false - - - - true - Qt4ProjectManager.MakeStep - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - clean - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - false - - 1112 - Qt4ProjectManager.Qt4BuildConfiguration - 0 - 0 - - 3 - - - 0 - Deploy - Deploy - ProjectExplorer.BuildSteps.Deploy - - 1 - - false - ProjectExplorer.DefaultDeployConfiguration - - 1 - - true - true - true - - 2 - - Qt4ProjectManager.Qt4RunConfiguration:C:/Users/25761/Desktop/tcpclient/TcpClient.pro - C:/Users/25761/Desktop/tcpclient/TcpClient.pro - false - true - true - false - true - C:/Users/25761/Desktop/build-TcpClient-Desktop_Qt_6_2_3_MinGW_64_bit-111 - - 1 - - - - ProjectExplorer.Project.TargetCount - 1 - - - ProjectExplorer.Project.Updater.FileVersion - 22 - - - Version - 22 - - -- 2.39.5 From 99d23522b20bc62eec7e5da0c6a3662c1dc0b1e9 Mon Sep 17 00:00:00 2001 From: Mentalflow <312902918@qq.com> Date: Sun, 15 Jan 2023 21:33:10 +0800 Subject: [PATCH 2/3] Added missing files. --- imgs/exeicon.ico | Bin 0 -> 12049 bytes imgs/exeicon.rc | 1 + 2 files changed, 1 insertion(+) create mode 100644 imgs/exeicon.ico create mode 100644 imgs/exeicon.rc diff --git a/imgs/exeicon.ico b/imgs/exeicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..5b3d3d6aab1b1626cf4239e6eed391fd1602774a GIT binary patch literal 12049 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 AZ~y=R literal 0 HcmV?d00001 diff --git a/imgs/exeicon.rc b/imgs/exeicon.rc new file mode 100644 index 0000000..8aa6f8c --- /dev/null +++ b/imgs/exeicon.rc @@ -0,0 +1 @@ +IDI_ICON1 ICON DISCARDABLE "exeicon.ico" \ No newline at end of file -- 2.39.5 From 367173d1fca7f7569eb05ebc122fc24279e56afb Mon Sep 17 00:00:00 2001 From: Mentalflow <312902918@qq.com> Date: Sun, 15 Jan 2023 23:29:09 +0800 Subject: [PATCH 3/3] Bug fixed. --- imgs/quit.png | Bin 6848 -> 16720 bytes login.cpp | 7 +++-- login.h | 8 +++--- mainwidget.cpp | 76 +++++++++++++++++++++++++++---------------------- mainwidget.h | 1 + signup.cpp | 6 ++-- 6 files changed, 54 insertions(+), 44 deletions(-) diff --git a/imgs/quit.png b/imgs/quit.png index f270eac13034357876239257420d576d8d404a69..848367917524e03b699b5e087e561338023dbd9d 100644 GIT binary patch literal 16720 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 OAZ<F_rA0t`=?)2rC6<0g(n#VhO=rx+J7S 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 S<#~18uc@Y|`d-=Y#s2`JQsZF& diff --git a/login.cpp b/login.cpp index cc431a1..cd7bd27 100644 --- a/login.cpp +++ b/login.cpp @@ -1,5 +1,6 @@ #include "login.h" #include "ui_login.h" +#include Login::Login(QWidget *parent) : QMainWindow(parent), @@ -74,7 +75,7 @@ void Login::paintEvent(QPaintEvent *event) // painter.drawPath(painterPath); //设置阴影 - QGraphicsDropShadowEffect *shadow = new QGraphicsDropShadowEffect(this); + QPointer shadow(new QGraphicsDropShadowEffect(this)); shadow->setOffset(0, 0); //设置阴影距离 shadow->setColor(QColor("#87CEFA")); //设置阴影颜色 shadow->setBlurRadius(10); //设置阴影圆角 @@ -237,7 +238,7 @@ void Login::exit_client() /************************************private functions************************************/ void Login::zoom_down(QPushButton* btn) { - QPropertyAnimation *animalton = new QPropertyAnimation(btn,"geometry"); + QScopedPointer animalton(new QPropertyAnimation(btn,"geometry")); //设置间隔时间 animalton->setDuration(200); //设置起始位置 @@ -252,7 +253,7 @@ void Login::zoom_down(QPushButton* btn) void Login::zoom_up(QPushButton* btn) { - QPropertyAnimation *animalton = new QPropertyAnimation(btn,"geometry"); + QScopedPointeranimalton(new QPropertyAnimation(btn,"geometry")); animalton->setDuration(200); animalton->setStartValue(QRect(btn->x(),btn->y()+5,btn->width(),btn->height())); animalton->setEndValue(QRect(btn->x(),btn->y(),btn->width(),btn->height())); diff --git a/login.h b/login.h index 90504fd..f4d9b67 100644 --- a/login.h +++ b/login.h @@ -54,10 +54,10 @@ private: QPoint point; QString user,passwd; static Login login_instance; - Login *login; - Signup *signup; - MainWidget *mainwidget; - DataManager *datamanager; + QPointer login; + QPointer signup; + QPointer mainwidget; + QPointer datamanager; bool connect_flag = false; void new_closebutton(QPushButton* btn, QString position,QSize size); diff --git a/mainwidget.cpp b/mainwidget.cpp index de9282d..0c15374 100644 --- a/mainwidget.cpp +++ b/mainwidget.cpp @@ -1,5 +1,6 @@ #include "mainwidget.h" #include "ui_mainwidget.h" +#include MainWidget::MainWidget(QString username,QWidget *parent) : QWidget(parent), @@ -186,7 +187,7 @@ void MainWidget::on_send_btn_clicked() QString to_user = text.mid(1,n-1); QString insert = "tell you quietly:"; QString data_text = insert + text.mid(n,-1); - QString text_self = QString("私发给%1:%2").arg(to_user).arg(text.mid(n)); + QString text_self = QString("私发给%1:%2").arg(to_user, text.mid(n)); qDebug() << text_self; if(username == to_user) { @@ -235,20 +236,7 @@ void MainWidget::on_exit_btn_clicked() { zoom_down(ui->exit_btn); zoom_up(ui->exit_btn); - QMessageBox::StandardButton response; - response = QMessageBox::question(this, "退出", tr("确定退出软件?否则将最小化窗口")); - - if(response == QMessageBox::Yes) - { - //emit exit_client(); - //emit update_namelist(username); - this->close(); - } - else - { - this->hide(); - CreatSystemTray(); - } + close(); } void MainWidget::on_stop_clicked() @@ -352,11 +340,10 @@ void MainWidget::update_users(int count,QListonline_users) void MainWidget::disconnect_form_server() { QMessageBox::critical(this,"连接超时","请检查您的网络连接!"); + qApp->quit(); } void MainWidget::sendFile(QString filePath,QString filename,QString name) { - //发送的数据存入block中 - QByteArray block; QFile file(filePath); //打开文件,定义错误提醒 if(!file.open(QIODevice::ReadOnly)){ @@ -364,10 +351,6 @@ void MainWidget::sendFile(QString filePath,QString filename,QString name) return; } - /*打开文件流,以写的方式打开 - QDataStream out(&block,QIODevice::WriteOnly); - out.setVersion(QDataStream::Qt_5_8);*/ - //将数据读取到QByteArray QByteArray dataOfFile = file.readAll(); //关闭文件 @@ -382,7 +365,7 @@ void MainWidget::sendFile(QString filePath,QString filename,QString name) { emit send_file_private(username,filename,dataOfFile,name); } - QProgressDialog *progressDlg = new QProgressDialog(this); + QScopedPointer progressDlg(new QProgressDialog(this)); progressDlg->setWindowModality(Qt::WindowModal); progressDlg->setMinimumDuration(0); progressDlg->setAttribute(Qt::WA_DeleteOnClose, true); @@ -404,9 +387,6 @@ void MainWidget::sendFile(QString filePath,QString filename,QString name) void MainWidget::readFile(QString filename,QByteArray data) { - /*QString homePath = QDir::homePath(); - QString filePath = QFileDialog::getExistingDirectory(this,tr("Open Directory"),homePath, - QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks);*/ QString filepath = "./Document"; QDir dir(filepath); if(dir.exists()) @@ -453,20 +433,20 @@ bool MainWidget::eventFilter(QObject *target, QEvent *event) void MainWidget::CreatSystemTray() { //创建菜单对象和托盘图标对象 - TrayMennu = new QMenu(this); - SystemTray = new QSystemTrayIcon(this); + QPointer TrayMennu(new QMenu(this)); + QPointer SystemTray(new QSystemTrayIcon(this)); //创建菜单项 - ActionShow = new QAction(tr("Show"), this); - ActionQuit = new QAction(tr("Exit"), this); - connect(ActionShow,&QAction::triggered,[=](){ + QPointer ActionShow(new QAction(tr("Show"), this)); + QPointer ActionQuit(new QAction(tr("Exit"), this)); + connect(ActionShow,&QAction::triggered,this,[=](){ this->show(); SystemTray->hide(); }); - connect(ActionQuit,&QAction::triggered,[=](){ + connect(ActionQuit,&QAction::triggered,this,[=](){ this->close(); }); - connect(SystemTray,&QSystemTrayIcon::activated,[=](){ + connect(SystemTray,&QSystemTrayIcon::activated,this,[=](){ this->show(); SystemTray->hide(); }); @@ -486,7 +466,7 @@ void MainWidget::CreatSystemTray() void MainWidget::zoom_down(QPushButton* btn) { - QPropertyAnimation *animalton = new QPropertyAnimation(btn,"geometry"); + QScopedPointer animalton(new QPropertyAnimation(btn,"geometry")); animalton->setDuration(150); animalton->setStartValue(QRect(btn->x(),btn->y(),btn->width(),btn->height())); animalton->setEndValue(QRect(btn->x(),btn->y()+5,btn->width(),btn->height())); @@ -497,10 +477,38 @@ void MainWidget::zoom_down(QPushButton* btn) void MainWidget::zoom_up(QPushButton* btn) { - QPropertyAnimation *animalton = new QPropertyAnimation(btn,"geometry"); + QScopedPointer animalton(new QPropertyAnimation(btn,"geometry")); animalton->setDuration(150); animalton->setStartValue(QRect(btn->x(),btn->y()+5,btn->width(),btn->height())); animalton->setEndValue(QRect(btn->x(),btn->y(),btn->width(),btn->height())); animalton->setEasingCurve(QEasingCurve::OutBounce); animalton->start(); } + +void MainWidget::closeEvent(QCloseEvent *event) +{ + std::function callback; + callback = [=](int r)->void{ + switch (r) + { + case QMessageBox::Ok: + { + event->accept(); + qApp->quit(); + break; + } + default: + { + event->ignore(); + this->hide(); + CreatSystemTray(); + break; + } + } + }; + QMessageBox box(QMessageBox::Question,QString("退出"), QString("确定退出软件?否则将最小化窗口"),QMessageBox::Ok|QMessageBox::Cancel); + box.button(QMessageBox::Ok)->setText("是"); + box.button(QMessageBox::Cancel)->setText("否"); + callback(box.exec()); + event->ignore(); +} diff --git a/mainwidget.h b/mainwidget.h index fa15c1b..82590cb 100644 --- a/mainwidget.h +++ b/mainwidget.h @@ -71,6 +71,7 @@ private: void zoom_up(QPushButton* btn); void zoom_down(QPushButton* btn); void CreatSystemTray(); + void closeEvent(QCloseEvent *event); }; #endif // MAINWIDGET_H diff --git a/signup.cpp b/signup.cpp index 5f48a5b..179814c 100644 --- a/signup.cpp +++ b/signup.cpp @@ -1,11 +1,12 @@ #include "signup.h" #include "ui_signup.h" +#include Signup::Signup(QWidget *parent) : QWidget(parent), ui(new Ui::Signup) { ui->setupUi(this); - QPixmap *pix = new QPixmap(":/blue.png"); + QScopedPointer pix (new QPixmap(":/blue.png")); QSize sz = ui->label_image->size(); ui->label_image->setPixmap(pix->scaled(sz)); @@ -13,7 +14,7 @@ Signup::Signup(QWidget *parent) : QWidget(parent), this->setWindowFlags(Qt::FramelessWindowHint); //无边框 //设置阴影 - QGraphicsDropShadowEffect *shadow = new QGraphicsDropShadowEffect(this); + QPointer shadow (new QGraphicsDropShadowEffect(this)); shadow->setOffset(-3, 0); shadow->setColor(QColor("#888888")); shadow->setBlurRadius(30); @@ -22,7 +23,6 @@ Signup::Signup(QWidget *parent) : QWidget(parent), Signup::~Signup() { - emit delete ui; } -- 2.39.5