解决updata 关闭时串口没有正常关闭的问题
修改服务器文件列表显示 添加.jwt文件解析
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
from PyQt5.QtCore import *
|
||||
from PyQt5.QtGui import *
|
||||
from PyQt5.QtWidgets import *
|
||||
|
||||
import sys
|
||||
|
||||
|
||||
|
||||
@@ -71,6 +71,83 @@ class select_list(QObject):
|
||||
|
||||
|
||||
|
||||
class file_list(QDialog):
|
||||
|
||||
def __init__(self,father:QDialog,title:str,str_list:list):
|
||||
QDialog.__init__(self,father)
|
||||
self.resize(1000,400)
|
||||
self.setAttribute(Qt.WidgetAttribute.WA_DeleteOnClose)
|
||||
self.setWindowTitle(title)
|
||||
self.code_list=QTableWidget(self)
|
||||
self.code_list.setObjectName(u"code_list")
|
||||
self.code_list.setGeometry(QRect(5, 5, 990, 390))
|
||||
self.code_list.setColumnCount(4)
|
||||
self.code_list.setHorizontalHeaderLabels(list(["ID","上传时间","文件名","描述"]))
|
||||
self.code_list.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeMode.Stretch)
|
||||
self.code_list.horizontalHeader().setSectionResizeMode(0,QHeaderView.ResizeMode.Fixed)
|
||||
self.code_list.setColumnWidth(0,50)
|
||||
self.code_list.horizontalHeader().setSectionResizeMode(1,QHeaderView.ResizeMode.Fixed)
|
||||
self.code_list.setColumnWidth(1,200)
|
||||
self.code_list.horizontalHeader().setSectionResizeMode(2,QHeaderView.ResizeMode.Fixed)
|
||||
self.code_list.setColumnWidth(2,200)
|
||||
self.code_list.setSelectionBehavior( QAbstractItemView.SelectionBehavior.SelectRows)
|
||||
self.code_list.cellDoubleClicked.connect(self.cell_clicked)
|
||||
self.backcolor=True
|
||||
for i in str_list:
|
||||
self.list_add(i[0])
|
||||
# 添加数据
|
||||
def list_add(self,text:str):
|
||||
stat=self.backcolor
|
||||
self.backcolor=not self.backcolor
|
||||
if(stat==True):
|
||||
bkcolor=QColor()
|
||||
bkcolor.setRgb(230,230,230,255)
|
||||
else:
|
||||
bkcolor=QColor()
|
||||
bkcolor.setRgb(255,255,255,255)
|
||||
code_strs=text.split("|")
|
||||
if(len(code_strs)>=4):
|
||||
code_strs[3],line=self.split_line(code_strs[3])
|
||||
else:
|
||||
code_strs.append("")
|
||||
line=1
|
||||
RowCont=self.code_list.rowCount()
|
||||
self.code_list.insertRow(RowCont)
|
||||
for i in range(len(code_strs)):
|
||||
self.code_list.setItem(RowCont,i,QTableWidgetItem(code_strs[i]))
|
||||
self.code_list.item(RowCont,i).setBackground(bkcolor)
|
||||
self.code_list.setRowHeight(RowCont,line*30)
|
||||
# self.code_list.resizeRowsToContents()
|
||||
def split_line(self,text:str):
|
||||
s=''
|
||||
line=(len(text)+29)//30
|
||||
for i in range(line):
|
||||
s+=text[i*30:(i+1)*30]
|
||||
s+='\n'
|
||||
return s.strip(),line
|
||||
def cell_clicked(self,x:int,y:int ):
|
||||
print("cell_clicked",x,y)
|
||||
str_list=[]
|
||||
for i in range(3):
|
||||
str_list.append(self.code_list.item(x,i).text())
|
||||
self.select_item='|'.join(str_list)
|
||||
self.done(QDialog.DialogCode.Accepted)
|
||||
self.close()
|
||||
def show(self):
|
||||
if(self.exec()==QDialog.DialogCode.Accepted):
|
||||
print(self.select_item)
|
||||
return self.select_item
|
||||
return ""
|
||||
|
||||
if __name__=='__main__':
|
||||
app = QApplication(sys.argv)
|
||||
l=[
|
||||
'1|2023-11-01 11:11:00|dddddddd|测试文字,测试文字,测试文字,测试文字,测试文字,测试文字,测试文字,测试文字,测试文字,测试文字,测试文字,测试文字,测试文字,测试文字, 测试文字,测试文字,测试文字,',
|
||||
'2|sssssss|dddddddd|sssssssss',
|
||||
'3|sssssss|dddddddd|sssssssss',
|
||||
'4|sssssss|dddddddd|sssssssss',
|
||||
]
|
||||
dlg=file_list(father=None, title="测试窗口",str_list=l)
|
||||
dlg.show()
|
||||
# app.exec()
|
||||
|
||||
|
Reference in New Issue
Block a user