
| Current Path : /proc/thread-self/root/home/ift/52_procpy/dataninja/test/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : //proc/thread-self/root/home/ift/52_procpy/dataninja/test/tss_tree_modify.py |
import sys
from PyQt5.QtWidgets import QMainWindow, QTextEdit, QAction, QApplication,QTreeWidget,QPushButton,QWidget,QHBoxLayout,QTreeWidgetItem
from procpy.tss.treeview import Treeview
from PyQt5.QtCore import QTimer
from opcua import ua, Client
import time
class TreeModify(QMainWindow):
def __init__(self, parent=None):
super(TreeModify, self).__init__(parent)
self.setWindowTitle('Modify Tree')
self.resize(600, 600)
self.treeview = Treeview()
self.treeview.setGeometry(50, 50, 600, 500)
self.item_list=[]
#self.btn_modi = QPushButton('Modify',self)
#self.btn_modi.move(30, 30)
#self.btn_modi.clicked.connect(self.onModify)
layout = QHBoxLayout()
layout.addWidget(self.treeview)
#layout.addWidget(self.btn_modi)
#self.treeview.changeEvent()
main_frame = QWidget()
main_frame.setLayout(layout)
self.setCentralWidget(main_frame)
qtimer = QTimer()
qtimer.singleShot(100, self.test_1)
#item=self.treeview.nodes.
#while item.value():
# if item.value().checkState(0) == QtCore.Qt.Checked:
#self.item_list.append(item)
#item = item.__isub__(1)
print("list: ", self.item_list)
def test_1(self):
client = Client("opc.tcp://localhost:4842/freeopcua/regler/")
while (0 == 0):
try:
client.connect()
break
except:
time.sleep(0.1)
print("connect")
self.node = client.get_root_node().get_child(["0:Objects", "0:regler"])
self.treeview.nodes.append(self.node)
self.treeview.make_tree()
self.treeview.itemChanged.connect(self.modify)
def modify(self):
namesec = ["a", "b"]
change_item = self.treeview.currentIndex()
change_data = change_item.data()
selectitem = self.treeview.selectedItems()
# print(selectitem.)
name = selectitem[0].text(0)
print(name)
print(change_data)
childname = str("0:") + str(name)
p = self.node.get_child(childname)
p.set_value(change_data)
print(p.get_value())
if __name__ == '__main__':
app = QApplication(sys.argv)
form = TreeModify()
form.show()
sys.exit(app.exec_())