浏览代码

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

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 查看文件

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
 import sqlite3
1
 import sqlite3
2
 
2
 
3
-from PySide6.QtGui import QStandardItemModel
3
+from PySide6.QtGui import QStandardItemModel, QStandardItem
4
 
4
 
5
 
5
 
6
 def main_function(ui, db_path, utf_en):
6
 def main_function(ui, db_path, utf_en):
24
     # 查询 GC_Output_Point 表中的 TableName 字段
24
     # 查询 GC_Output_Point 表中的 TableName 字段
25
     query_table_names = "SELECT DISTINCT TableName FROM GC_Output_Point"
25
     query_table_names = "SELECT DISTINCT TableName FROM GC_Output_Point"
26
     cursor1.execute(query_table_names)
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
     query = """
28
     query = """
36
     SELECT New_ID, New_ResultName, New_SPName, New_EPName, New_HDiff, New_RLen, Correct_Factor, Period_Diff, Dis_Ass
29
     SELECT New_ID, New_ResultName, New_SPName, New_EPName, New_HDiff, New_RLen, Correct_Factor, Period_Diff, Dis_Ass
42
     cursor1.close()
35
     cursor1.close()
43
     db1.close()
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
     model = QStandardItemModel()
39
     model = QStandardItemModel()
60
     model.setColumnCount(len(result[0]))
40
     model.setColumnCount(len(result[0]))
61
 
41
 
62
-#     设置表头
42
+    # 设置表头
63
     headers = ['序号', '结果期数', '起点', '终点', '高差', '路线长', '修正数', '期间差异', '变形判定']
43
     headers = ['序号', '结果期数', '起点', '终点', '高差', '路线长', '修正数', '期间差异', '变形判定']
64
     model.setHorizontalHeaderLabels(headers)
44
     model.setHorizontalHeaderLabels(headers)
65
 
45
 
66
     for row_data in result:
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
         model.appendRow(items)
64
         model.appendRow(items)
69
 
65
 
66
+    # 设置并展示表格
70
     ui.resultTableView.setModel(model)
67
     ui.resultTableView.setModel(model)
71
     ui.resultTableView.show()
68
     ui.resultTableView.show()
72
 
69
 
70
+    # 隐藏 QLabel
71
+    ui.default_remind.hide()

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

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

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

27
 
27
 
28
 
28
 
29
 class Ui_MainWindow(object):
29
 class Ui_MainWindow(object):
30
-
30
+    # UI界面
31
     def setupUi(self, MainWindow):
31
     def setupUi(self, MainWindow):
32
         if not MainWindow.objectName():
32
         if not MainWindow.objectName():
33
             MainWindow.setObjectName(u"MainWindow")
33
             MainWindow.setObjectName(u"MainWindow")
1424
         self.download_1.setObjectName(u"download_1")
1424
         self.download_1.setObjectName(u"download_1")
1425
 
1425
 
1426
         self.verticalLayout_22.addWidget(self.download_1)
1426
         self.verticalLayout_22.addWidget(self.download_1)
1427
-
1427
+        # 下载2
1428
         self.download_2 = QPushButton(self.row_3)
1428
         self.download_2 = QPushButton(self.row_3)
1429
         self.download_2.setObjectName(u"download_2")
1429
         self.download_2.setObjectName(u"download_2")
1430
 
1430
 
1431
         self.verticalLayout_22.addWidget(self.download_2)
1431
         self.verticalLayout_22.addWidget(self.download_2)
1432
-
1432
+        # 下载3
1433
         self.download_3 = QPushButton(self.row_3)
1433
         self.download_3 = QPushButton(self.row_3)
1434
         self.download_3.setObjectName(u"download_3")
1434
         self.download_3.setObjectName(u"download_3")
1435
 
1435
 
1482
         self.tabWidget.setTabsClosable(False)
1482
         self.tabWidget.setTabsClosable(False)
1483
         self.tabWidget.setTabBarAutoHide(False)
1483
         self.tabWidget.setTabBarAutoHide(False)
1484
 
1484
 
1485
+
1486
+
1487
+
1488
+
1485
         self.resultTable = QWidget()
1489
         self.resultTable = QWidget()
1486
         self.resultTable.setObjectName(u"resultTable")
1490
         self.resultTable.setObjectName(u"resultTable")
1487
         self.verticalLayout_29 = QVBoxLayout(self.resultTable)
1491
         self.verticalLayout_29 = QVBoxLayout(self.resultTable)
1489
         self.resultTableView = QTableView(self.resultTable)
1493
         self.resultTableView = QTableView(self.resultTable)
1490
         self.resultTableView.setObjectName(u"resultTableView")
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
         self.verticalLayout_29.addWidget(self.resultTableView)
1505
         self.verticalLayout_29.addWidget(self.resultTableView)
1493
 
1506
 
1494
         icon5 = QIcon()
1507
         icon5 = QIcon()
1550
 
1563
 
1551
         self.horizontalLayout_12.addWidget(self.lineEdit_2)
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
         self.search = QPushButton(self.datainfo)
1570
         self.search = QPushButton(self.datainfo)
1554
         self.search.setObjectName(u"search")
1571
         self.search.setObjectName(u"search")
1555
         sizePolicy4 = QSizePolicy(QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Fixed)
1572
         sizePolicy4 = QSizePolicy(QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Fixed)
1825
 
1842
 
1826
         self.stackedWidget.setCurrentIndex(1)
1843
         self.stackedWidget.setCurrentIndex(1)
1827
         self.tabWidget.setCurrentIndex(0)
1844
         self.tabWidget.setCurrentIndex(0)
1828
-
1829
-        QMetaObject.connectSlotsByName(MainWindow)
1830
-
1831
     # setupUi
1845
     # setupUi
1832
 
1846
 
1833
     def retranslateUi(self, MainWindow):
1847
     def retranslateUi(self, MainWindow):
1981
                                                          u"<html><head/><body><p><span style=\" font-size:11pt; font-weight:700;\">\u6210\u679c\u9884\u89c8</span></p></body></html>",
1995
                                                          u"<html><head/><body><p><span style=\" font-size:11pt; font-weight:700;\">\u6210\u679c\u9884\u89c8</span></p></body></html>",
1982
                                                          None))
1996
                                                          None))
1983
         self.tabWidget.setTabText(self.tabWidget.indexOf(self.resultTable),
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
         self.tabWidget.setTabText(self.tabWidget.indexOf(self.reconTable), QCoreApplication.translate("MainWindow",
1999
         self.tabWidget.setTabText(self.tabWidget.indexOf(self.reconTable), QCoreApplication.translate("MainWindow",
1986
                                                                                                       u"\u590d\u6d4b\u57fa\u51c6\u5f52\u7b97\u8868",
2000
                                                                                                       u"\u590d\u6d4b\u57fa\u51c6\u5f52\u7b97\u8868",
1987
                                                                                                       None))
2001
                                                                                                       None))

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


正在加载...
取消
保存