本文整理汇总了Golang中C.SDL_GetKeyState函数的典型用法代码示例。如果您正苦于以下问题:Golang SDL_GetKeyState函数的具体用法?Golang SDL_GetKeyState怎么用?Golang SDL_GetKeyState使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了SDL_GetKeyState函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: GetKeyState
// Gets a snapshot of the current keyboard state
func GetKeyState() []uint8 {
var numkeys C.int
array := C.SDL_GetKeyState(&numkeys)
var ptr = make([]uint8, numkeys)
*((**C.Uint8)(unsafe.Pointer(&ptr))) = array // TODO
return ptr
}
示例2: IsKeyDown
func IsKeyDown(key KeySym) bool {
var numKeys C.int
keys := C.SDL_GetKeyState(&numKeys)
if int(key) < 0 || int(key) >= int(numKeys) {
return false
}
// Keys is a byte array
// XXX: Is this idiomatic for accessing C arrays?
result := (*byte)(unsafe.Pointer(uintptr(unsafe.Pointer(keys)) + uintptr(key)))
return *result != 0
}
示例3: GetKeyState
// Gets a snapshot of the current keyboard state
func GetKeyState() []uint8 {
GlobalMutex.Lock()
var numkeys C.int
array := C.SDL_GetKeyState(&numkeys)
var ptr = make([]uint8, numkeys)
*((**C.Uint8)(unsafe.Pointer(&ptr))) = array // TODO
GlobalMutex.Unlock()
return ptr
}
示例4: GetKeyState
func GetKeyState() []uint8 {
ks := C.SDL_GetKeyState(nil)
ptr := (*[K_LAST]byte)(unsafe.Pointer(ks))
res := ptr[0:K_LAST]
return res
}