@@ -13,8 +13,8 @@ MainWindow::MainWindow(QWidget *parent) :
1313 ui(new Ui::MainWindow)
1414{
1515 ui->setupUi (this );
16-
17- refreshDPI (); // 根据dpi调整窗体大小
16+ // 根据系统选择参数:Windows,MACos,Linux
17+ refreshDPI (MACos ); // 根据系统dpi调整窗体大小
1818 // connect(screen, &QScreen::logicalDotsPerInchChanged, this, &MainWindow::onLogicalDotsPerInchChanged);
1919 // 失能和隐藏相应控件
2020 ui->pushButtonSend ->setEnabled (false );// 使相应的按钮不可用
@@ -27,7 +27,7 @@ MainWindow::MainWindow(QWidget *parent) :
2727
2828 ui->groupBoxRev ->setFixedWidth (541 *myobjectRate);// 根据屏幕分辨率不一样固定接收组的大小
2929 ui->TextRev ->setFixedWidth (521 *myobjectRate);// 根据屏幕分辨率不一样固定接收窗口的大小
30- this ->setFixedSize (729 *myobjectRate,564 *myobjectRate);// 根据屏幕分辨率不一样固定主窗口的大小
30+ this ->setFixedSize (729 *myobjectRate,584 *myobjectRate);// 根据屏幕分辨率不一样固定主窗口的大小
3131
3232
3333 // 创建周期发送、时间显示、延时接收定时器,并初始化
@@ -91,7 +91,7 @@ MainWindow::MainWindow(QWidget *parent) :
9191 qlbLinkRYMCU->setOpenExternalLinks (true );// 状态栏显示官网、源码链接
9292 qlbLinkRYMCU->setText (" <style> a {text-decoration: none} </style> <a href=\" https://rymcu.com\" >--RYMCU官网--" );// 无下划线
9393 qlbLinkSource->setOpenExternalLinks (true );
94- qlbLinkSource->setText (" <style> a {text-decoration: none} </style> <a href=\" https://github.com/rymcu/RYCOM\" >--助手源代码V2.6.1 --" );// 无下划线
94+ qlbLinkSource->setText (" <style> a {text-decoration: none} </style> <a href=\" https://github.com/rymcu/RYCOM\" >--助手源代码V2.6.2 --" );// 无下划线
9595 // 隐藏进度条
9696 ui->progressBar ->setVisible (false );
9797 // 串口指示灯设置为只读控件,屏蔽鼠标点击事件
@@ -1137,15 +1137,31 @@ void MainWindow::SendDataByNoOfEditLineNo(int EditLineNo)
11371137*刷新dpi,获取当前屏幕状态,并伸缩所用控件的大小
11381138*只在窗口构造函数中调用,因此,改变屏幕分辨率需要重新启动软件
11391139***********************************************************/
1140- void MainWindow::refreshDPI ()
1140+ void MainWindow::refreshDPI (SYS_TYPE system )
11411141{
11421142 // 计算dpi
11431143 QList<QScreen*> screens = QApplication::screens ();
11441144 QScreen* screen = screens[0 ];
11451145 qreal dpi = screen->logicalDotsPerInch ();
11461146
11471147 // 计算dpi对应的缩放比例,96win,72mac
1148- double objectRate = dpi/96.0 ;// 72
1148+ double sys_type;
1149+ switch (system)
1150+ {
1151+ case Windows:
1152+ sys_type = 96.0 ;
1153+ break ;
1154+ case MACos:
1155+ sys_type = 72.0 ;
1156+ break ;
1157+ case Linux:
1158+ sys_type = 96.0 ;
1159+ break ;
1160+ default :
1161+ sys_type = 96.0 ;
1162+ break ;
1163+ }
1164+ double objectRate = dpi/sys_type;
11491165 myobjectRate=objectRate;
11501166 changeObjectSize (*this , objectRate);
11511167 resize (width ()*objectRate,height ()*objectRate);
@@ -1210,19 +1226,24 @@ void MainWindow::ResumeFormESP32ISP(void)
12101226void MainWindow::on_pushButton_RYISP_clicked ()
12111227{
12121228 static uint8_t flag_stm32 = 0 ;
1229+ if (!MyCom.isOpen ())
1230+ {
1231+ QMessageBox::critical (this , " 提示" , " 请先打开串口!" );
1232+ return ;
1233+ }
12131234 ui->progressBar ->setVisible (false );// 隐藏进度条
12141235 flag_stm32++;
12151236 if (flag_stm32%2 )
12161237 {
1217- ui->groupBox_stm32 ->move (190 *myobjectRate,395 *myobjectRate);
1238+ ui->groupBox_stm32 ->move (180 *myobjectRate,382 *myobjectRate);
12181239 ui->groupBoxSend ->hide ();
12191240 }
12201241 else
12211242 {
1222- ui->groupBox_stm32 ->move (190 *myobjectRate,720 *myobjectRate);
1243+ ui->groupBox_stm32 ->move (180 *myobjectRate,720 *myobjectRate);
12231244 ui->groupBoxSend ->show ();
12241245 }
1225- ui->groupBox_esp32 ->move (190 *myobjectRate,596 *myobjectRate);// 显示STM32下载框时,确保ESP32框不可见
1246+ ui->groupBox_esp32 ->move (180 *myobjectRate,596 *myobjectRate);// 显示STM32下载框时,确保ESP32框不可见
12261247}
12271248
12281249/* **********************************************************
@@ -1751,6 +1772,11 @@ void MainWindow::timer_FileChanged()
17511772void MainWindow::on_pushButton_ESP32ISP_clicked ()
17521773{
17531774 static uint8_t flag = 0 ;
1775+ if (!MyCom.isOpen ())
1776+ {
1777+ QMessageBox::critical (this , " 提示" , " 请先打开串口!" );
1778+ return ;
1779+ }
17541780 ui->progressBar_BOOT_Combine ->setVisible (false );// 隐藏进度条
17551781 ui->progressBar_PART ->setVisible (false );
17561782 ui->progressBar_APP ->setVisible (false );
@@ -1764,15 +1790,15 @@ void MainWindow::on_pushButton_ESP32ISP_clicked()
17641790 flag++;
17651791 if (flag%2 )
17661792 {
1767- ui->groupBox_esp32 ->move (190 *myobjectRate,395 *myobjectRate);
1793+ ui->groupBox_esp32 ->move (180 *myobjectRate,382 *myobjectRate);
17681794 ui->groupBoxSend ->hide ();
17691795 }
17701796 else
17711797 {
1772- ui->groupBox_esp32 ->move (190 *myobjectRate,596 *myobjectRate);
1798+ ui->groupBox_esp32 ->move (180 *myobjectRate,596 *myobjectRate);
17731799 ui->groupBoxSend ->show ();
17741800 }
1775- ui->groupBox_stm32 ->move (190 *myobjectRate,720 *myobjectRate);// 显示ESP32下载框时,确保STM32框不可见
1801+ ui->groupBox_stm32 ->move (180 *myobjectRate,720 *myobjectRate);// 显示ESP32下载框时,确保STM32框不可见
17761802
17771803 s_target = (target_chip_t )ui->comboBoxCheck_ESP32 ->currentIndex ();// 初始化芯片型号
17781804}
0 commit comments