2016-05-13 20 views
1

Ich benutze Go und ich muss in der Lage sein, eine Schleife zu laufen, bis eine bestimmte Taste gedrückt wird. Gibt es Bibliotheken oder gibt es Funktionen, die dies ermöglichen? Ich muss nur erkennen, ob ein Schlüssel down auf jeder Iteration der Schleife ist. Ich habe versucht, azul3d verwenden, aber es war nicht ganz das, was ich gesucht habe ...Golang Schleife bis Taste gedrückt

Dies ist, was ich hoffe auf:

exit := false 
for !exit { 
    exit = watcher.Down(keyboard.Space) 
} 

oder etwas ähnliches

Antwort

1

Verwendung keyboard mit seinem termbox Backend, wie folgt aus:

package main 

import "github.com/julienroland/keyboard-termbox" 
import "fmt" 
import term "github.com/nsf/termbox-go" 

func main() { 
    running := true 
    err := term.Init() 
    if err != nil { 
     panic(err) 
    } 

    defer term.Close() 

    kb := termbox.New() 
    kb.Bind(func() { 
     fmt.Println("pressed space!") 
     running = false 
    }, "space") 

    for running { 
     kb.Poll(term.PollEvent()) 
    } 

} 
+0

Danke, werden versuchen, dass! :) – Firedrake969

+0

Es scheint nicht zu funktionieren - mache ich etwas falsch? Ich mache nur eine Schleife, bis die Leertaste gedrückt wird, aber es erkennt nie, wenn ich die Leertaste drücke. – Firedrake969

+0

Welches Betriebssystem? Testen Sie dies vom Terminal aus? –

Verwandte Themen