瀏覽代碼

完成了水准计算的成果展示页面,完善了成果展示页面的显示与隐藏

Mr.wzp 5 月之前
父節點
當前提交
f196902d7f
共有 5 個文件被更改,包括 60 次插入31 次删除
  1. 10
    0
      .idea/Code.iml
  2. 23
    24
      Back/GC/GCshow.py
  3. 6
    0
      Back/GS/GSshow.py
  4. 21
    7
      Front/modules/ui_main.py
  5. 二進制
      SQL/DataBase.db

+ 10
- 0
.idea/Code.iml 查看文件

@@ -0,0 +1,10 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<module type="PYTHON_MODULE" version="4">
3
+  <component name="NewModuleRootManager">
4
+    <content url="file://$MODULE_DIR$">
5
+      <excludeFolder url="file://$MODULE_DIR$/.venv" />
6
+    </content>
7
+    <orderEntry type="inheritedJdk" />
8
+    <orderEntry type="sourceFolder" forTests="false" />
9
+  </component>
10
+</module>

+ 23
- 24
Back/GC/GCshow.py 查看文件

@@ -1,6 +1,6 @@
1 1
 import sqlite3
2 2
 
3
-from PySide6.QtGui import QStandardItemModel
3
+from PySide6.QtGui import QStandardItemModel, QStandardItem
4 4
 
5 5
 
6 6
 def main_function(ui, db_path, utf_en):
@@ -24,13 +24,6 @@ def main_function(ui, db_path, utf_en):
24 24
     # 查询 GC_Output_Point 表中的 TableName 字段
25 25
     query_table_names = "SELECT DISTINCT TableName FROM GC_Output_Point"
26 26
     cursor1.execute(query_table_names)
27
-    table_names = cursor1.fetchall()
28
-    table_names = [name[0] for name in table_names]
29
-
30
-    # 打印 TableName 字段的值
31
-    print("Table Names in GC_Output_Point:")
32
-    for name in table_names:
33
-        print(name)
34 27
 
35 28
     query = """
36 29
     SELECT New_ID, New_ResultName, New_SPName, New_EPName, New_HDiff, New_RLen, Correct_Factor, Period_Diff, Dis_Ass
@@ -42,31 +35,37 @@ def main_function(ui, db_path, utf_en):
42 35
     cursor1.close()
43 36
     db1.close()
44 37
 
45
-    # 检查查询结果
46
-    if not result:
47
-        print("查询结果为空")
48
-        return
49
-
50
-    # 打印查询结果以检查数据类型
51
-    print("查询结果:")
52
-    for row in result:
53
-        print(row)
54
-        # 检查每一列的数据类型
55
-        # for i, value in enumerate(row):
56
-        #     print(f"列 {i} 数据类型: {type(value)}")
57
-
58
-#     创建QStandardItemModel 实例
38
+    # 创建 QStandardItemModel 实例
59 39
     model = QStandardItemModel()
60 40
     model.setColumnCount(len(result[0]))
61 41
 
62
-#     设置表头
42
+    # 设置表头
63 43
     headers = ['序号', '结果期数', '起点', '终点', '高差', '路线长', '修正数', '期间差异', '变形判定']
64 44
     model.setHorizontalHeaderLabels(headers)
65 45
 
66 46
     for row_data in result:
67
-        items = [QStandardItemModel(str(item))for item in row_data]
47
+        items = []
48
+        for i, item in enumerate(row_data):
49
+            if i == 4 or i == 5:  # 索引4(高差)
50
+                item = f"{item:.6f}"  # 格式化为6位小数
51
+            elif i == 6:  # 索引 6(修正数)
52
+                item = f"{item:.2f}"
53
+            elif i == 7:  # 假设 Period_Diff 在索引 7
54
+                if item is not None and isinstance(item, (int, float)):
55
+                    item = f"{item:.2f}"  # 格式化为2位小数
56
+                else:
57
+                    item = ""  # 如果是 None 或非数字类型,显示空字符串
58
+            elif i == 8:  # 假设 Dis_Ass 在索引 8
59
+                if item is not None and isinstance(item, str):
60
+                    item = item  # 显示字符串内容
61
+                else:
62
+                    item = ""  # 如果是 None,显示空字符串
63
+            items.append(QStandardItem(str(item)))
68 64
         model.appendRow(items)
69 65
 
66
+    # 设置并展示表格
70 67
     ui.resultTableView.setModel(model)
71 68
     ui.resultTableView.show()
72 69
 
70
+    # 隐藏 QLabel
71
+    ui.default_remind.hide()

+ 6
- 0
Back/GS/GSshow.py 查看文件

@@ -38,8 +38,12 @@ def main_function(ui, db_path, utf_en):
38 38
     model1.setHorizontalHeaderLabels(
39 39
         ['点名', '前期X', '前期Y', '本期X', '本期Y', '前期-本期X', '前期-本期Y', '前期-本期P', '位移判定'])
40 40
     model1.setVerticalHeaderLabels(nlist1)
41
+
42
+    # 展示表格
41 43
     ui.resultTableView.setModel(model1)
42 44
     ui.resultTableView.show()
45
+    # 隐藏 QLabel
46
+    ui.default_remind.hide()
43 47
 
44 48
     # 创建一个数据模型(基准归算表)
45 49
     model2 = QStandardItemModel()
@@ -47,6 +51,8 @@ def main_function(ui, db_path, utf_en):
47 51
     model2.setHorizontalHeaderLabels(
48 52
         ['点名', '基准归算X', '基准归算Y', '前期-归算X', '前期-归算Y', '前期-归算P', '位移判定'])
49 53
     model2.setVerticalHeaderLabels(nlist2)
54
+
55
+    # 展示表格
50 56
     ui.reconTableView.setModel(model2)
51 57
     ui.reconTableView.show()
52 58
 

+ 21
- 7
Front/modules/ui_main.py 查看文件

@@ -27,7 +27,7 @@ from .resources_rc import *
27 27
 
28 28
 
29 29
 class Ui_MainWindow(object):
30
-
30
+    # UI界面
31 31
     def setupUi(self, MainWindow):
32 32
         if not MainWindow.objectName():
33 33
             MainWindow.setObjectName(u"MainWindow")
@@ -1424,12 +1424,12 @@ class Ui_MainWindow(object):
1424 1424
         self.download_1.setObjectName(u"download_1")
1425 1425
 
1426 1426
         self.verticalLayout_22.addWidget(self.download_1)
1427
-
1427
+        # 下载2
1428 1428
         self.download_2 = QPushButton(self.row_3)
1429 1429
         self.download_2.setObjectName(u"download_2")
1430 1430
 
1431 1431
         self.verticalLayout_22.addWidget(self.download_2)
1432
-
1432
+        # 下载3
1433 1433
         self.download_3 = QPushButton(self.row_3)
1434 1434
         self.download_3.setObjectName(u"download_3")
1435 1435
 
@@ -1482,6 +1482,10 @@ class Ui_MainWindow(object):
1482 1482
         self.tabWidget.setTabsClosable(False)
1483 1483
         self.tabWidget.setTabBarAutoHide(False)
1484 1484
 
1485
+
1486
+
1487
+
1488
+
1485 1489
         self.resultTable = QWidget()
1486 1490
         self.resultTable.setObjectName(u"resultTable")
1487 1491
         self.verticalLayout_29 = QVBoxLayout(self.resultTable)
@@ -1489,6 +1493,15 @@ class Ui_MainWindow(object):
1489 1493
         self.resultTableView = QTableView(self.resultTable)
1490 1494
         self.resultTableView.setObjectName(u"resultTableView")
1491 1495
 
1496
+        # 隐藏 resultTableView
1497
+        self.resultTableView.hide()
1498
+
1499
+        # 创建一个 QLabel 并设置文本(第三页文本中心默认提醒)
1500
+        self.default_remind = QLabel("在上一步计算完成后将显示结果", self.resultTable)
1501
+        self.default_remind.setAlignment(Qt.AlignCenter)  # 设置文本居中对齐
1502
+        # 将 QLabel 添加到布局中
1503
+        self.verticalLayout_29.addWidget(self.default_remind)
1504
+        # 表格显示
1492 1505
         self.verticalLayout_29.addWidget(self.resultTableView)
1493 1506
 
1494 1507
         icon5 = QIcon()
@@ -1550,6 +1563,10 @@ class Ui_MainWindow(object):
1550 1563
 
1551 1564
         self.horizontalLayout_12.addWidget(self.lineEdit_2)
1552 1565
 
1566
+        # 设置到处结果显示页面(tabWidget)的默认隐藏2.3页
1567
+        self.tabWidget.setTabVisible(1, False)
1568
+        self.tabWidget.setTabVisible(2, False)
1569
+
1553 1570
         self.search = QPushButton(self.datainfo)
1554 1571
         self.search.setObjectName(u"search")
1555 1572
         sizePolicy4 = QSizePolicy(QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Fixed)
@@ -1825,9 +1842,6 @@ class Ui_MainWindow(object):
1825 1842
 
1826 1843
         self.stackedWidget.setCurrentIndex(1)
1827 1844
         self.tabWidget.setCurrentIndex(0)
1828
-
1829
-        QMetaObject.connectSlotsByName(MainWindow)
1830
-
1831 1845
     # setupUi
1832 1846
 
1833 1847
     def retranslateUi(self, MainWindow):
@@ -1981,7 +1995,7 @@ class Ui_MainWindow(object):
1981 1995
                                                          u"<html><head/><body><p><span style=\" font-size:11pt; font-weight:700;\">\u6210\u679c\u9884\u89c8</span></p></body></html>",
1982 1996
                                                          None))
1983 1997
         self.tabWidget.setTabText(self.tabWidget.indexOf(self.resultTable),
1984
-                                  QCoreApplication.translate("MainWindow", u"\u590d\u6d4b\u6210\u679c\u8868", None))
1998
+                                  QCoreApplication.translate("MainWindow", u"\u6210\u679c\u5c55\u793a\u533a", None))
1985 1999
         self.tabWidget.setTabText(self.tabWidget.indexOf(self.reconTable), QCoreApplication.translate("MainWindow",
1986 2000
                                                                                                       u"\u590d\u6d4b\u57fa\u51c6\u5f52\u7b97\u8868",
1987 2001
                                                                                                       None))

二進制
SQL/DataBase.db 查看文件


Loading…
取消
儲存