Hi,
ich wollte fragen wie ich die Tasten abfragen kann.
Ich hab nen Chrakter der sich mit Pfeiltasten bewegen soll.
Will das ganze aber ohne Pygame machen.
MfG,
morlon
Tastenabfrage
Kein GUI? Falls nein, Google mal nach pyHook. M. E. bist du damit schnell im Bereich von Keyloggern, jedenfalls verlaufen die Diskussionen dann in diesem Forum dann meist in diese Richtung.
PS: Ich habe mal - ich erinnere mich grob - in der Einführung von Michael Weigend eine Raumsimulation mittels tkinter gesehen, wo ein Raumschiff mittels Pfeiltasten bewegt wurde. Könnte für dich von Interesse sein.
PPS: Deinen anderen Beiträgen folgend würde ich denken, dass Du Tkinter einsetzt , d. h. Weigend wäre für dich von Interesse.
PPPS: Die Quellcodes von Weigend waren auf einer CD dabei. Ich könnte dir das Programm wahrscheinlich raussuchen und schicken. Nur so am Rande. Wenn du es nicht brauchst: Du kannst m. E. bei Tkinter die Maus- und Tasten-Events abfragen und nutzen. Habe ich wenn, dann nur mal zum Spaß gemacht, d. h. keine Erfahrung.
PS: Ich habe mal - ich erinnere mich grob - in der Einführung von Michael Weigend eine Raumsimulation mittels tkinter gesehen, wo ein Raumschiff mittels Pfeiltasten bewegt wurde. Könnte für dich von Interesse sein.
PPS: Deinen anderen Beiträgen folgend würde ich denken, dass Du Tkinter einsetzt , d. h. Weigend wäre für dich von Interesse.
PPPS: Die Quellcodes von Weigend waren auf einer CD dabei. Ich könnte dir das Programm wahrscheinlich raussuchen und schicken. Nur so am Rande. Wenn du es nicht brauchst: Du kannst m. E. bei Tkinter die Maus- und Tasten-Events abfragen und nutzen. Habe ich wenn, dann nur mal zum Spaß gemacht, d. h. keine Erfahrung.
Zuletzt geändert von pixewakb am Samstag 26. Dezember 2015, 19:24, insgesamt 1-mal geändert.
Sorry, das wird dauern. Ich stelle gerade fest, dass ich Weigend griffbereit habe, aber die CD nicht. Ich habe die Auflage 4, 2010 und zwar findet sich das Beispiel dort in Kapitel "18.3 Beispiel: Tastaturereignisse verarbeiten".
Ich habe zwischendrin etwas Code entfernt ([...]) und alles abgetippt, d. h. ich hoffe mal, dass da keine Fehler enthalten sind. Verstehst Du das Konzept? self.gemin7 hat er als Instanzattribut definiert und zwar wie folgt:
g7 wiederum ist eine Variable, die ein PhotoImage enthält.
Code: Alles auswählen
from tkinter import *
class Spielflaeche:
def __init__(self):
self.fenster = Tk()
self.canvas = Canvas(self, fenster, width="10c", height="5c")
self.canvas.pack()
[...]
self.fenster.bind('<KeyPress-Down>', self.runter)
self.fenster.bind('<KeyPress-Up>', self.rauf)
self.fenster.bind('<KeyPress-Left>', self.links)
self.fenster.bind('<KeyPress-Right>', self.rechts)
self.fenster.mainloop()
def rauf(self, event):
self.canvas.move(self.gemini7, 0, -3)
def runter(self, event):
self.canvas.move(self.gemini7, 0, +3)
def links(self, event):
self.canvas.move(self.gemini7, -3, 0)
def rechts(self, event):
self.canvas.move(self.gemini7, 3, 0)
s = Spielflaeche()
Code: Alles auswählen
self.gemini7 = self.canvas.create_image(50, 50, image=g7)
Zuletzt geändert von pixewakb am Samstag 26. Dezember 2015, 19:37, insgesamt 1-mal geändert.
@Morlon: Eine Klasse `tk` gibt es auch nicht und wird in dem Quelltext auch gar nicht verwendet. `tk` != `Tk`.
- noisefloor
- User
- Beiträge: 3856
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
@Morlon: also ohne Pygame, aber mit TKinter? Das hättest du im 1. Post ruhig erwähnen können...
Wenn du's im Terminal brauchst liefert eine Suche nach `python read keystroke windows` brauchbare Treffer.
Gruß, noisefloor
@Morlon: also ohne Pygame, aber mit TKinter? Das hättest du im 1. Post ruhig erwähnen können...
Wenn du's im Terminal brauchst liefert eine Suche nach `python read keystroke windows` brauchbare Treffer.
Gruß, noisefloor