2010-12-23 19 views
1

Ich versuche, graphics.py zu verwenden, um eine Benutzergrafikschnittstelle zu schreiben. Das Problem ist, dass ich das Rechtklickereignis erfassen kann. Es scheint, dass die Funktion getMouse() einfach dorthin zurückkehren kann, wo die Maus als Punktobjekt geklickt wurde.So erfassen Sie das Ereignis "Rechtsklick" mithilfe von getMouse()

from graphics import * 
    def main(): 
     win = GraphWin("My Circle", 100, 100) 
     c = Circle(Point(50,50), 10) 
     c.draw(win) 
     win.getMouse() # pause for click in window 
     win.close() 
    main() 

Ich möchte wissen, wie kann ich das Rechtsklick-Ereignis im Fenster erfassen, danke.

+0

Sie an der Quelle graphics.py aussehen sollten. Das Hinzufügen eines Handlers für Mausklicks wäre ziemlich trivial. graphics.py ist einfach Tkinter Programm. – Mark

Antwort

0

Hausaufgaben? Bitte fügen Sie "Hausaufgaben" -Tag hinzu. Ich würde empfehlen, versuchen Sie TkInter für eine Python-GUI.

TkInter Verwendung, hier ist ein Beispiel, das einen Rechtsklick erkennt:

from Tkinter import * 


def showPosEvent(event): 
    print 'Widget=%s X=%s Y=%s' % (event.widget, event.x, event.y) 



def onRightClick(event): 
    print 'Got right mouse button click:', 
    showPosEvent(event) 


tkroot = Tk() 
labelfont = ('courier', 20, 'bold')    
widget = Label(tkroot, text='Hello bind world') 
widget.config(bg='red', font=labelfont)   
widget.config(height=5, width=20)     
widget.pack(expand=YES, fill=BOTH) 

widget.bind('<Button-3>', onRightClick)   


widget.focus()          
tkroot.title('Click Me') 
tkroot.mainloop() 
+1

Danke, das ist nicht meine Hausaufgabe, nur aus Neugier. – Leyond

+0

Warum annehmen, das sind Hausaufgaben? – Vreality

Verwandte Themen