Difference between revisions of "love.keyboard.isScancodeDown (日本語)"

m
m (関連: Added examples.)
Line 14: Line 14:
 
=== 返値 ===
 
=== 返値 ===
 
{{param|boolean|down|true ならば用意された任意のキーは押されており、それ以外ならば false です。}}
 
{{param|boolean|down|true ならば用意された任意のキーは押されており、それ以外ならば false です。}}
 +
 +
== 用例 ==
 +
変換・無変換キーの取得 (日本語106 キーボード / Windows 環境用)
 +
<source lang="lua">
 +
keystatus = "None"
 +
 +
function love.load()
 +
love.keyboard.setTextInput(false)
 +
end
 +
 +
function love.draw()
 +
love.graphics.print("keypressed:" .. keystatus, 29, 30)
 +
end
 +
 +
--- `              : 全角・半角・漢字 (Windows のみ)
 +
--- international2 : ひらがな・カタカナ・ローマ字
 +
--- international4 : 変換
 +
--- international5 : 無変換
 +
 +
 +
function love.update()
 +
 +
-- if love.keyboard.isScancodeDown('`', 'lang5') == true then
 +
-- keystatus = "Zenkaku/Hankaku/Kanji (Windows Only)" -- 押すとほかのキーが反応しない。原因不明。
 +
 +
-- elseif love.keyboard.isScancodeDown('international2') == true then
 +
-- keystatus = "Hiragana/Katakana/Roman" -- 押すとほかのキーが反応しない。原因不明。取りこぼしか?
 +
 +
-- elseif love.keyboard.isScancodeDown('space') == true then
 +
-- keystatus = "Space"
 +
 +
if love.keyboard.isScancodeDown('international4') == true then
 +
keystatus = "Henkan"
 +
 +
elseif love.keyboard.isScancodeDown('international5') == true then
 +
keystatus = "Muhenkan"
 +
 +
else
 +
keystatus = "None"
 +
end
 +
end
 +
</source>
 +
  
 
== 関連 ==
 
== 関連 ==
Line 26: Line 69:
 
{{#set:PrettySince=0.10.0}}
 
{{#set:PrettySince=0.10.0}}
 
{{#set:Description=指定された[[Scancode (日本語)|スキャンコード]]が押されたかどうか確認します。}}
 
{{#set:Description=指定された[[Scancode (日本語)|スキャンコード]]が押されたかどうか確認します。}}
 +
 
== そのほかの言語 ==
 
== そのほかの言語 ==
 
{{i18n|love.keyboard.isScancodeDown}}
 
{{i18n|love.keyboard.isScancodeDown}}

Revision as of 17:37, 20 August 2017

LÖVE 0.10.0 から使用可能
この関数は以前のバージョンでは非対応です。

指定されたスキャンコードが押されたかどうか確認します。 love.keypressed または love.keyreleased とは混同しないでください。

正規のキー定数とは異なり、スキャンコードはキーボード配列に依存しません。キーにどの様な刻印がされているか、あるいは利用者のオペレーティング・システムの設定がどの様なものであるかに関わらず、米国配列のキーボードにある "w" キーと同じ位置にあるキーが押された場合はスキャンコードの "w" が使用されます。

関数

概要

down = love.keyboard.isScancodeDown( scancode, ... )

引数

Scancode scancode
検出したいキー。
Scancode ...
検出したい追加のキー。

返値

boolean down
true ならば用意された任意のキーは押されており、それ以外ならば false です。

用例

変換・無変換キーの取得 (日本語106 キーボード / Windows 環境用)

keystatus = "None"

function love.load()
	love.keyboard.setTextInput(false)
end

function love.draw()
	love.graphics.print("keypressed:" .. keystatus, 29, 30)
end

--- `              : 全角・半角・漢字 (Windows のみ)
--- international2 : ひらがな・カタカナ・ローマ字
--- international4 : 変換
--- international5 : 無変換


function love.update()

--	if love.keyboard.isScancodeDown('`', 'lang5') == true then
--		keystatus = "Zenkaku/Hankaku/Kanji (Windows Only)" -- 押すとほかのキーが反応しない。原因不明。

--	elseif love.keyboard.isScancodeDown('international2') == true then
--		keystatus = "Hiragana/Katakana/Roman" -- 押すとほかのキーが反応しない。原因不明。取りこぼしか?

--	elseif love.keyboard.isScancodeDown('space') == true then
--		keystatus = "Space"

	if love.keyboard.isScancodeDown('international4') == true then
		keystatus = "Henkan"

	elseif love.keyboard.isScancodeDown('international5') == true then
		keystatus = "Muhenkan"

	else
		keystatus = "None"
	end
end


関連



そのほかの言語