Change GUI view and usability
This commit is contained in:
		
							
								
								
									
										30
									
								
								gui.py
									
									
									
									
									
								
							
							
						
						
									
										30
									
								
								gui.py
									
									
									
									
									
								
							| @@ -5,7 +5,7 @@ import sys | ||||
| from PyQt5.QtWidgets import (QWidget, QHBoxLayout, QFrame, | ||||
|     QSplitter, QStyleFactory, QApplication) | ||||
| from PyQt5.QtCore import Qt | ||||
| from PyQt5.QtWidgets import QMainWindow, QTextEdit, QAction, QApplication, QListView, QListWidget, QTableWidget , QTableView, QTableWidgetItem | ||||
| from PyQt5.QtWidgets import QMainWindow, QTextEdit, QAction, QApplication, QListView, QListWidget, QTableWidget , QTableView, QTableWidgetItem, QHeaderView | ||||
| from PyQt5.QtGui import QIcon | ||||
| from PyQt5.QtSql import * | ||||
| #import pymysql | ||||
| @@ -116,7 +116,16 @@ class MyTable(QTableWidget): | ||||
|         self.data = thestruct | ||||
|         self.setmydata() | ||||
|         self.tbl = tbl | ||||
|  | ||||
|         self.resizeColumnsToContents() | ||||
|         self.horizontalHeader().setSortIndicatorShown(True) | ||||
|         self.horizontalHeader().setStretchLastSection(True) | ||||
|         #self.horizontalHeader().stretchLastSection() | ||||
|         self.horizontalHeader().setCascadingSectionResizes(True) | ||||
|         # равномерное изменение ширины столбцов | ||||
|         #self.horizontalHeader().setSectionResizeMode(1) | ||||
|         # изменение ширины столбцов по размеру текста | ||||
|         self.horizontalHeader().setSectionResizeMode(3) | ||||
|         self.horizontalHeader().setStyleSheet("color: blue;") | ||||
|         #print(self.tbl) | ||||
|         n = 0 | ||||
|         for item in dm.getTablesStructure(self.tbl): | ||||
| @@ -146,6 +155,7 @@ class WorkArea(QWidget): | ||||
|         # список таблиц | ||||
|         listTablesWidget = QListWidget() | ||||
|         listTablesWidget.setFrameShape(QFrame.StyledPanel) | ||||
|         listTablesWidget.setFixedWidth(200) | ||||
|         # таблица для вывода данных | ||||
|         tablesDataWidget = QTableView() | ||||
|         tablesDataWidget.setFrameShape(QFrame.StyledPanel) | ||||
| @@ -156,17 +166,25 @@ class WorkArea(QWidget): | ||||
|  | ||||
|         splitter2 = QSplitter(Qt.Vertical) | ||||
|         splitter2.addWidget(splitter1) | ||||
|  | ||||
|         #splitter1.setSizes([100, 300]) | ||||
|         hbox.addWidget(splitter2) | ||||
|         #splitter1.setStretchFactor(1, 0) | ||||
|         #splitter1.sizeHint() | ||||
|  | ||||
|         self.setLayout(hbox) | ||||
|  | ||||
|         # выводим список таблиц в левом поле | ||||
|         for i in dm.initDBstructure(): | ||||
|             listTablesWidget.addItem(i[0]) | ||||
|         tblList = dm.initDBstructure() | ||||
|         for i in tblList: | ||||
|             listTablesWidget.addItem(i[1]) | ||||
|  | ||||
|         # заполняем правый список данными из выбранной таблицы | ||||
|         def addData(tbl_name): | ||||
|         def addData(tbl_descr): | ||||
|             # выбираем название таблицы по описанию | ||||
|             for i in tblList: | ||||
|                 if i[1] == tbl_descr: | ||||
|                     tbl_name = i[0] | ||||
|  | ||||
|            # удаляем предыдущий виджет таблицы | ||||
|             item = splitter1.widget(1) | ||||
|             if item is not None: | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Sergey Kalinin
					Sergey Kalinin