<div dir="ltr">Hello<div><br></div><div>I was wondering if anyone knows how to enable jupyter notebook to interact with a PyQt generated widget after calling app.exec_()?    The intrinsic mouseEvent() functions do work, but the cells in the notebook are locked out until the widget is closed manually. </div><div><br></div><div>It seems I have to call/execute the QApplication in a special way or connect the notebook to it somehow, but can't figure it out.</div><div><br></div><div>Thanks,</div><div>Catubc</div><div><br></div><div><pre style="white-space:pre-wrap;font-size:12.8px;padding:5px;width:auto;max-height:600px;overflow:auto;font-family:consolas,menlo,monaco,"lucida console","liberation mono","dejavu sans mono","bitstream vera sans mono","courier new",monospace,sans-serif;background-color:rgb(239,240,241);word-wrap:normal;color:rgb(36,39,41)">#FIGURE CLASS: initialization of figure object and execution</pre><pre style="white-space:pre-wrap;font-size:12.8px;padding:5px;width:auto;max-height:600px;overflow:auto;font-family:consolas,menlo,monaco,"lucida console","liberation mono","dejavu sans mono","bitstream vera sans mono","courier new",monospace,sans-serif;background-color:rgb(239,240,241);word-wrap:normal;color:rgb(36,39,41)"><code style="font-family:consolas,menlo,monaco,"lucida console","liberation mono","dejavu sans mono","bitstream vera sans mono","courier new",monospace,sans-serif;white-space:inherit">class Figure(object):
    '''
    Main API functions
    '''

    def __init__(self):
        print "... initializing canvas ..."
        self.app = QApplication(sys.argv)
        self.app.processEvents()
        ...

    def show(self):   #Show
        self.GUI = GLWindow(data)   
        self.app.exec_()</code></pre><pre style="white-space:pre-wrap;font-size:12.8px;padding:5px;width:auto;max-height:600px;overflow:auto;font-family:consolas,menlo,monaco,"lucida console","liberation mono","dejavu sans mono","bitstream vera sans mono","courier new",monospace,sans-serif;background-color:rgb(239,240,241);word-wrap:normal;color:rgb(36,39,41)"><code style="font-family:consolas,menlo,monaco,"lucida console","liberation mono","dejavu sans mono","bitstream vera sans mono","courier new",monospace,sans-serif;white-space:inherit"><pre style="white-space:pre-wrap;font-size:12.8px;padding:5px;width:auto;max-height:600px;overflow:auto;font-family:consolas,menlo,monaco,"lucida console","liberation mono","dejavu sans mono","bitstream vera sans mono","courier new",monospace,sans-serif;word-wrap:normal"><code style="font-family:consolas,menlo,monaco,"lucida console","liberation mono","dejavu sans mono","bitstream vera sans mono","courier new",monospace,sans-serif;white-space:inherit">#JUPYTER NOTEBOOK CODE: figure instantiation and display
fig = plb.figure()
...
fig.show()  #Locks out any further jupyter commands while widget on screen
fig.update() #Does not get executed until widget is closed</code></pre></code></pre></div></div>