Code: Select all
def FunctionConnect(self):
self.ScanComPB.clicked.connect(self.ScanComPBClicked)
self.CloseComPB.clicked.connect(self.CloseComPBClicked)
def ScanComPBClicked(self):
print("Scan Com Ports Clicked")
Port = serial.tools.list_ports.comports()
for OnePort in Port:
self.PortList.append(OnePort.device)
PortListLen = len(self.PortList)
PortListLenSplit = math.ceil(PortListLen/2)
List1 = self.PortList[:PortListLenSplit]
List2 = self.PortList[PortListLenSplit:]
self.COMList1.addItems(List1)
self.COMList2.addItems(List2)
self.ComRow = 2
for Ports in self.PortList:
#Reset Dictionary Data
self.SensorDict["ComPort"] = ""
self.SensorDict["EEPROM"] = []
print(Ports)
self.SensorDict["ComPort"] = Ports
self.DataTable.setItem(self.ComRow,0,QTableWidgetItem(Ports))
try:
self.TestPort = serial.Serial(Ports, self.BaudRate, timeout = self.TimeOut)
except serial.SerialException:
self.DataTable.setItem(self.ComRow,0,QTableWidgetItem("Serial Exception"))
self.TestPort.close()
#Read Sensor EEPROM, and loads it into self.SensorDict["EEPROM"]
self.ReadSensorEEPROM()
print ("Read EEPROM")
if self.SensorDict["EEPROM"]:
#Gets sensor type and loads it into self.SensorDict["Sensor Type"]
self.GetSensorType()
print ("Read Sensor Type")
self.DataTable.setItem(self.ComRow,1,QTableWidgetItem(self.SensorDict["Sensor Type"]))
else:
self.DataTable.setItem(self.ComRow,1,QTableWidgetItem("Invalid"))
self.SensorDict["Pass/Fail"] = False
self.TestPort.close()
self.ComRow += 1
Programmierung in Spyder Python 3.1.2 Pyqty, auf einem Windows 11 -PC. Dort, an der richtigen Stelle, sobald es angezeigt wird, möchte ich, dass sie angezeigt werden, sobald jeder Wert gesammelt wird, nicht nachdem alles fertig ist. < /p>
Ich versuche das Problem zu verstehen. Ich konnte keine ähnliche Frage finden und weder die Dokumentation noch ein Tutorial sagen etwas über einen separaten Befehl zur Aktualisierung der Tabellenanzeige. Alles scheint sofort dort zu erscheinen.>