From cb2e2980865d2e615b951d2da592e55d943d4cb5 Mon Sep 17 00:00:00 2001 From: Eric Cousineau Date: Fri, 25 Jun 2021 18:35:11 -0400 Subject: [PATCH] simple_gui: All Ctrl+C to kill program (for roslaunch) --- scripts/simple_gui.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/scripts/simple_gui.py b/scripts/simple_gui.py index 2c67feb..76dea22 100755 --- a/scripts/simple_gui.py +++ b/scripts/simple_gui.py @@ -52,7 +52,7 @@ class Window: tk.Button(self.frmLB,text="夹爪(关)",command=self.gripper_close,width=5).grid(row=1, column=1, sticky="w", padx=3, pady=2) def connect_ser(self): - rospy.init_node('simple_gui', anonymous=True) + rospy.init_node('simple_gui', anonymous=True, disable_signals=True) rospy.wait_for_service('get_joint_angles') rospy.wait_for_service('set_joint_angles') @@ -338,8 +338,16 @@ class Window: j.set(str(i)+"°") def run(self): - self.win.mainloop() - + while True: + try: + self.win.update() + time.sleep(0.001) + except tk.TclError as e: + if "application has been destroyed" in str(e): + break + else: + raise + def main(): window = tk.Tk() window.title('mycobot ros GUI')