ControllWidget.py 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. from PyQt5.QtWidgets import QWidget, QApplication,QMainWindow,QLabel,QLineEdit,QPushButton,QComboBox
  2. from PyQt5.QtGui import QPixmap,QPainter,QResizeEvent,QCloseEvent,QPaintEvent,QFont
  3. from PyQt5.QtCore import QSize,QTimer,QRect,Qt
  4. class Frame(QMainWindow):
  5. def __init__(self,UI_data):
  6. super(Frame, self).__init__()
  7. self.setGeometry(0,0,400,500)
  8. self.btnCreateTrajFunc=None
  9. self.btnSendClickFunc=None
  10. self.btnCancelFunc=None
  11. self.InitUI(UI_data)
  12. def SetBtnFunc(self,funcs):
  13. if not funcs.get("CreateTraj")==None:
  14. self.btnCreateTrajFunc=funcs["CreateTraj"]
  15. if not funcs.get("SendCmd")==None:
  16. self.btnSendClickFunc=funcs["SendCmd"]
  17. if not funcs.get("CancelCmd")==None:
  18. self.btnCancelFunc=funcs["CancelCmd"]
  19. def InitUI(self,UI_data):
  20. self.begstatic=QLabel(self)
  21. self.begstatic.setText(" 起点")
  22. self.begstatic.setGeometry(0, 0, 50, 30)
  23. self.begQc=QComboBox(self)
  24. self.begQc.setGeometry(60, 0, 80, 30)
  25. self.endstatic=QLabel(self)
  26. self.endstatic.setText(" 终点")
  27. self.endstatic.setGeometry(0, 50, 50, 30)
  28. self.endQc=QComboBox(self)
  29. self.endQc.setGeometry(60, 50, 80, 30)
  30. self.btn=QPushButton(self)
  31. self.btn.setGeometry(20, 100, 100, 40)
  32. self.btn.setText(" 生成轨迹")
  33. self.btn.clicked.connect(self.btnCreateClick)
  34. self.btnSend=QPushButton(self)
  35. self.btnSend.setGeometry(150, 100, 100, 40)
  36. self.btnSend.setText(" 启动导航")
  37. self.btnSend.clicked.connect(self.btnSendClick)
  38. self.btnCancel=QPushButton(self)
  39. self.btnCancel.setGeometry(150, 150, 100, 40)
  40. self.btnCancel.setText(" 取消导航")
  41. self.btnCancel.clicked.connect(self.btnCancelClick)
  42. cb_list=UI_data['nodes']
  43. self.begQc.addItems(cb_list)
  44. self.endQc.addItems(cb_list)
  45. def btnCreateClick(self):
  46. if not self.btnCreateTrajFunc==None:
  47. id1=self.begQc.currentText()
  48. id2=self.endQc.currentText()
  49. self.btnCreateTrajFunc(id1,id2)
  50. def btnSendClick(self):
  51. if not self.btnSendClickFunc==None:
  52. self.btnSendClickFunc()
  53. def btnCancelClick(self):
  54. if not self.btnCancelFunc==None:
  55. self.btnCancelFunc()