Skip to content

Instantly share code, notes, and snippets.

@myokoym
Created November 2, 2010 13:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save myokoym/659617 to your computer and use it in GitHub Desktop.
Save myokoym/659617 to your computer and use it in GitHub Desktop.
Mouse で keyboard 入力.
#!ruby -Ks
require 'vr/vruby'
require 'vr/vrcontrol'
require 'win32/clipboard'
class Frm_form1 < VRForm
@caps_flag = false
def _form1_init
self.caption = 'Keyboard'
self.move(140,124,500,400)
addControl(VRButton,'buttonSpace'," ",152,184,96,32)
addControl(VRButton,'buttonC',"c",136,152,32,32)
addControl(VRButton,'buttonU',"u",232,88,32,32)
addControl(VRButton,'buttonS',"s",88,120,32,32)
addControl(VRButton,'buttonSlash',"/",360,152,32,32)
addControl(VRButton,'button4',"4",120,56,32,32)
addControl(VRButton,'buttonB',"b",200,152,32,32)
addControl(VRButton,'buttonCopy',"Copy",24,296,88,40)
addControl(VRButton,'buttonH',"h",216,120,32,32)
addControl(VRButton,'buttonComma',",",296,152,32,32)
addControl(VRButton,'buttonF',"f",152,120,32,32)
addControl(VRButton,'buttonYen',"\\",392,152,32,32)
addControl(VRButton,'buttonW',"w",72,88,32,32)
addControl(VRButton,'buttonL',"l",312,120,32,32)
addControl(VRButton,'buttonE',"e",104,88,32,32)
addControl(VRButton,'buttonM',"m",264,152,32,32)
addControl(VRButton,'buttonX',"x",104,152,32,32)
addControl(VRButton,'buttonJ',"j",248,120,32,32)
addControl(VRButton,'buttonKana',"かな",336,296,88,40)
addControl(VRButton,'button2',"2",56,56,32,32)
addControl(VRButton,'buttonRight',"]",408,120,32,32)
addControl(VRButton,'buttonA',"a",56,120,32,32)
addControl(VREdit,'edit1',"",30,20,400,20)
addControl(VRButton,'buttonG',"g",184,120,32,32)
addControl(VRButton,'button5',"5",152,56,32,32)
addControl(VRButton,'buttonO',"o",296,88,32,32)
addControl(VRButton,'button8',"8",248,56,32,32)
addControl(VRButton,'buttonQ',"q",40,88,32,32)
addControl(VRButton,'buttonT',"t",168,88,32,32)
addControl(VRButton,'button9',"9",280,56,32,32)
addControl(VRButton,'buttonR',"r",136,88,32,32)
addControl(VRButton,'buttonK',"k",280,120,32,32)
addControl(VRButton,'buttonColon',":",376,120,32,32)
addControl(VRButton,'buttonV',"v",168,152,32,32)
addControl(VRButton,'buttonSemicolon',";",344,120,32,32)
addControl(VRButton,'buttonY',"y",200,88,32,32)
addControl(VRButton,'button3',"3",88,56,32,32)
addControl(VRButton,'button7',"7",216,56,32,32)
addControl(VRButton,'buttonP',"p",328,88,32,32)
addControl(VRButton,'buttonLeft',"[",392,88,32,32)
addControl(VRButton,'buttonClear',"Clear",128,296,88,40)
addControl(VRButton,'button1',"1",24,56,32,32)
addControl(VRButton,'button0',"0",312,56,32,32)
addControl(VRButton,'buttonCaps',"Caps",232,296,88,40)
addControl(VRButton,'buttonZ',"z",72,152,32,32)
addControl(VRButton,'buttonAt',"@",360,88,32,32)
addControl(VRButton,'button6',"6",184,56,32,32)
addControl(VRButton,'buttonN',"n",232,152,32,32)
addControl(VRButton,'buttonD',"d",120,120,32,32)
addControl(VRButton,'buttonHat',"^",376,56,32,32)
addControl(VRButton,'buttonHyphen',"-",344,56,32,32)
addControl(VRButton,'buttonI',"i",264,88,32,32)
addControl(VRButton,'buttonPeriod',".",328,152,32,32)
addControl(VRButton,'buttonBS',"BS",440,56,32,32)
end
def construct
_form1_init
end
def button1_clicked; input(@button1.caption) end
def button2_clicked; input(@button2.caption) end
def button3_clicked; input(@button3.caption) end
def button4_clicked; input(@button4.caption) end
def button5_clicked; input(@button5.caption) end
def button6_clicked
if @caps_flag
input('&')
else
input(@button6.caption)
end
end
def button7_clicked; input(@button7.caption) end
def button8_clicked; input(@button8.caption) end
def button9_clicked; input(@button9.caption) end
def button0_clicked; input(@button0.caption) end
def buttonHyphen_clicked; input(@buttonHyphen.caption) end
def buttonHat_clicked; input(@buttonHat.caption) end
def buttonQ_clicked; input(@buttonQ.caption) end
def buttonW_clicked; input(@buttonW.caption) end
def buttonE_clicked; input(@buttonE.caption) end
def buttonR_clicked; input(@buttonR.caption) end
def buttonT_clicked; input(@buttonT.caption) end
def buttonY_clicked; input(@buttonY.caption) end
def buttonU_clicked; input(@buttonU.caption) end
def buttonI_clicked; input(@buttonI.caption) end
def buttonO_clicked; input(@buttonO.caption) end
def buttonP_clicked; input(@buttonP.caption) end
def buttonAt_clicked; input(@buttonAt.caption) end
def buttonLeft_clicked; input(@buttonLeft.caption) end
def buttonA_clicked; input(@buttonA.caption) end
def buttonS_clicked; input(@buttonS.caption) end
def buttonD_clicked; input(@buttonD.caption) end
def buttonF_clicked; input(@buttonF.caption) end
def buttonG_clicked; input(@buttonG.caption) end
def buttonH_clicked; input(@buttonH.caption) end
def buttonJ_clicked; input(@buttonJ.caption) end
def buttonK_clicked; input(@buttonK.caption) end
def buttonL_clicked; input(@buttonL.caption) end
def buttonSemicolon_clicked; input(@buttonSemicolon.caption) end
def buttonColon_clicked; input(@buttonColon.caption) end
def buttonRight_clicked; input(@buttonRight.caption) end
def buttonZ_clicked; input(@buttonZ.caption) end
def buttonX_clicked; input(@buttonX.caption) end
def buttonC_clicked; input(@buttonC.caption) end
def buttonV_clicked; input(@buttonV.caption) end
def buttonB_clicked; input(@buttonB.caption) end
def buttonN_clicked; input(@buttonN.caption) end
def buttonM_clicked; input(@buttonM.caption) end
def buttonComma_clicked; input(@buttonComma.caption) end
def buttonPeriod_clicked; input(@buttonPeriod.caption) end
def buttonSlash_clicked; input(@buttonSlash.caption) end
def buttonYen_clicked; input(@buttonYen.caption) end
def buttonSpace_clicked; input(@buttonSpace.caption) end
def buttonCopy_clicked
begin
Win32::Clipboard.set_data(@edit1.text)
rescue
p "copy error"
end
end
def buttonBS_clicked
@edit1.text = @edit1.text.split(//s)[0..-2].join
end
def buttonClear_clicked
@edit1.text = ""
end
def buttonCaps_clicked
if @caps_flag
@button1.caption = '1'
@button2.caption = '2'
@button3.caption = '3'
@button4.caption = '4'
@button5.caption = '5'
@button6.caption = '6'
@button7.caption = '7'
@button8.caption = '8'
@button9.caption = '9'
@button0.caption = '0'
@buttonHyphen.caption = '-'
@buttonHat.caption = '^'
@buttonQ.caption = 'q'
@buttonW.caption = 'w'
@buttonE.caption = 'e'
@buttonR.caption = 'r'
@buttonT.caption = 't'
@buttonY.caption = 'y'
@buttonU.caption = 'u'
@buttonI.caption = 'i'
@buttonO.caption = 'o'
@buttonP.caption = 'p'
@buttonAt.caption = '@'
@buttonLeft.caption = '['
@buttonA.caption = 'a'
@buttonS.caption = 's'
@buttonD.caption = 'd'
@buttonF.caption = 'f'
@buttonG.caption = 'g'
@buttonH.caption = 'h'
@buttonJ.caption = 'j'
@buttonK.caption = 'k'
@buttonL.caption = 'l'
@buttonSemicolon.caption = ';'
@buttonColon.caption = ':'
@buttonRight.caption = ']'
@buttonZ.caption = 'z'
@buttonX.caption = 'x'
@buttonC.caption = 'c'
@buttonV.caption = 'v'
@buttonB.caption = 'b'
@buttonN.caption = 'n'
@buttonM.caption = 'm'
@buttonComma.caption = ','
@buttonPeriod.caption = '.'
@buttonSlash.caption = '/'
@buttonYen.caption = '\\'
@buttonSpace.caption = ' '
@caps_flag = false
else
@button1.caption = '!'
@button2.caption = '"'
@button3.caption = '#'
@button4.caption = '$'
@button5.caption = '%'
@button6.caption = '&&'
@button7.caption = '\''
@button8.caption = '('
@button9.caption = ')'
@button0.caption = '|'
@buttonHyphen.caption = '='
@buttonHat.caption = '~'
@buttonQ.caption = 'Q'
@buttonW.caption = 'W'
@buttonE.caption = 'E'
@buttonR.caption = 'R'
@buttonT.caption = 'T'
@buttonY.caption = 'Y'
@buttonU.caption = 'U'
@buttonI.caption = 'I'
@buttonO.caption = 'O'
@buttonP.caption = 'P'
@buttonAt.caption = '`'
@buttonLeft.caption = '{'
@buttonA.caption = 'A'
@buttonS.caption = 'S'
@buttonD.caption = 'D'
@buttonF.caption = 'F'
@buttonG.caption = 'G'
@buttonH.caption = 'H'
@buttonJ.caption = 'J'
@buttonK.caption = 'K'
@buttonL.caption = 'L'
@buttonSemicolon.caption = '+'
@buttonColon.caption = '*'
@buttonRight.caption = '}'
@buttonZ.caption = 'Z'
@buttonX.caption = 'X'
@buttonC.caption = 'C'
@buttonV.caption = 'V'
@buttonB.caption = 'B'
@buttonN.caption = 'N'
@buttonM.caption = 'M'
@buttonComma.caption = '<'
@buttonPeriod.caption = '>'
@buttonSlash.caption = '?'
@buttonYen.caption = '_'
@buttonSpace.caption = ' '
@caps_flag = true
end
end
def buttonKana_clicked
@button1.caption = 'ぬ'
@button2.caption = 'ふ'
@button3.caption = 'あ'
@button4.caption = 'う'
@button5.caption = 'え'
@button6.caption = 'お'
@button7.caption = 'や'
@button8.caption = 'ゆ'
@button9.caption = 'よ'
@button0.caption = 'わ'
@buttonHyphen.caption = 'ほ'
@buttonHat.caption = 'へ'
@buttonQ.caption = 'た'
@buttonW.caption = 'て'
@buttonE.caption = 'い'
@buttonR.caption = 'す'
@buttonT.caption = 'か'
@buttonY.caption = 'ん'
@buttonU.caption = 'な'
@buttonI.caption = 'に'
@buttonO.caption = 'ら'
@buttonP.caption = 'せ'
@buttonAt.caption = '゛'
@buttonLeft.caption = '゜'
@buttonA.caption = 'ち'
@buttonS.caption = 'と'
@buttonD.caption = 'し'
@buttonF.caption = 'は'
@buttonG.caption = 'き'
@buttonH.caption = 'く'
@buttonJ.caption = 'ま'
@buttonK.caption = 'の'
@buttonL.caption = 'り'
@buttonSemicolon.caption = 'れ'
@buttonColon.caption = 'け'
@buttonRight.caption = 'む'
@buttonZ.caption = 'つ'
@buttonX.caption = 'さ'
@buttonC.caption = 'そ'
@buttonV.caption = 'ひ'
@buttonB.caption = 'こ'
@buttonN.caption = 'み'
@buttonM.caption = 'も'
@buttonComma.caption = 'ね'
@buttonPeriod.caption = 'る'
@buttonSlash.caption = 'め'
@buttonYen.caption = 'ろ'
@buttonSpace.caption = ' '
end
def input(char)
@edit1.text += char
end
end
VRLocalScreen.start Frm_form1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment