событие мыши после события клавиатуры - PullRequest
0 голосов
/ 16 февраля 2019

У меня есть графический интерфейс с множеством вкладок, на которых я строю данные.

Я создал событие мыши (щелчок правой кнопкой мыши, левый, я использую его для нажатия на панель навигации и другие вещи)

так что, когда я нажимаю на сигналы, которые я строю, я получаю (x,y)

вот событие мыши

from matplotlib import pyplot as plt
import pdb
class MouseEvent:
    def __init__(self,canvas):
        self.canvas = canvas
        self.xs = {}
        self.ys = {}
        self.cid = self.canvas.canvas.mpl_connect('button_press_event', self)


def __call__(self, event):

        if event.button == 3: #right button
            #if event.inaxes != self.canvas.axes: return
            print('click', event)
            print(event.xdata)
            print(event.ydata)


            self.canvas.canvas.mpl_disconnect(self.cid)
            return event.xdata,event.ydata

Я вызываю это из моего графического интерфейса с помощью

mouse = MouseEvent(self.widget_LID1.figure)

это работает и делает то, что я хочу, только один раз и только для определенного холста, к которому я его подключаю (self.widfget_LID1.figure)

Есть ли способ активировать это событие каждый раз, когда я нажимаю определенную клавишу?и для всего холста у меня есть?

Нужно ли использовать lambda или есть другой способ?Помощь приветствуется

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...