0
我有兩個程序都帶有QTableWidget。我想通過網絡自動同步這些表格。我不知道如何做到這一點。我用套接字pyqt它不工作。我讀了很多關於simple chat application like this。我認爲這不是我需要的方式。Python通過網絡自動同步表格
我沒有任何網絡代碼的程序:
import sys
from PyQt4 import QtGui, QtCore
class Window(QtGui.QMainWindow):
def __init__(self, parent=None):
QtGui.QMainWindow.__init__(self, parent)
# Table
header = ["Name", "Date", "Club"]
self.Table = QtGui.QTableWidget(0, len(header))
self.Table.setHorizontalHeaderLabels(header)
self.Table.resizeColumnsToContents()
# Layout
layout = QtGui.QGridLayout()
layout.addWidget(self.Table)
self.tab_widget = QtGui.QTabWidget()
self.tab_widget.updatesEnabled()
tabs = [u"Overview"]
for i,d in enumerate(tabs):
widget = QtGui.QWidget()
self.tab_widget.addTab(widget, d)
print i, d
if i == 0:
widget.setLayout(layout)
self.setCentralWidget(self.tab_widget)
self.show()
data = ["Name1", "Monday", "Club1"]
self.Table.insertRow(0)
# insert Data
for i in range(len(data)):
t = QtGui.QTableWidgetItem(data[i].decode("utf8"))
self.Table.setItem(0, i, t)
self.Table.resizeColumnsToContents()
if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
prog = Window()
prog.show()
sys.exit(app.exec_())
我的東西,代碼是在第4行,其中是「..:def __init__」壞了,請更正它。即使它有效,通常也不會在Python中的「:」之後放置任何代碼,這會使代碼更具可讀性。 –
您正計劃通過網絡同步某些內容的狀態。你應該首先明確一般邏輯 - 你打算使用主從角色嗎?或者你打算允許兩個表上的更新?這可能相當複雜。你目前的問題現在太廣泛了。 –