Newer
Older
Ruby / j2115_intro.rb
#!/usr/bin/env ruby
# coding: utf-8

require 'csv'     #csvライブラリの呼び出し
data = CSV.read("information.csv", :headers => true)    #自己紹介の内容を表すcsvファイル読み込み


require 'curses'     #Cursesライブラリの呼び出し
include Curses     #画面の好きな位置に文字表示、Return押さなくても入力可

init_screen     #画面の初期化
cbreak      #Ruturnなしで入力
noecho      #入力した文字を表示しない

rt = []


while true
  puts "1 自己紹介"
  puts "2 写真提示+説明"
  puts "0 終了"
  Curses.addstr(sprintf("どれかひとつ選んでください => "))
  input=Curses.getch      #変数に代入
  if input == "0" then      #もしinputが0だったとき
    break     #終了する
  elsif input == "1"       #もしinputが1だったとき
    #↓行ごとに取り出す
    n = 0    #見出しのための変数
    data.each{|row|     #rowには1行ずつ値が入り繰り返される
      Curses.addstr(sprintf("hello!!%d: %sです\n",n+=1,row["名前"]))
      Curses.addstr(sprintf("チーム => %s \nチームの役割 => %s \n",row["チーム"],row["チームの役割"]))
      Curses.addstr(sprintf("学校 => %s \n学年 => %s \n塾生番号 => %s \n",row["学校"],row["学年"],row["塾生番号"]))
      Curses.addstr(sprintf("誕生日 => %s \n趣味 => %s \n特技 => %s \n",row["誕生日"],row["趣味"],row["特技"]))
      Curses.addstr(sprintf("好きな食べ物 => %s \n好きなこと => %s \n苦手なこと => %s \n",row["好きな食べ物"],row["好きなこと"],row["苦手なこと"]))}
    print("--------------------------------\n")    #仕切り
  elsif input == "2"       #もしinputが2だったとき
    begin         #画面を初期化して行う処理の開始
      sleep(0)

      #10.times do
      system("display -geometry +0+0 inko.jpg&")    #画面の表示
      sleep(6)
      puts("私はインコを飼っています")
      puts("とても可愛くて、我が家のアイドルです!")
      system('pkill magick -U `whoami`')    #画面の消去
      srand
      system("display -geometry +0+0 nature1.jpg&")    #写真提示
      sleep(2)
      system('pkill magick -U `whoami`')
      system("display -geometry +0+0 nature2.jpg&")    #座標指定
      sleep(2)
      system('pkill magick -U `whoami`')
      system("display -geometry +0+0 nature3.jpg&")
      sleep(2)
      system('pkill magick -U `whoami`')
      Curses.close_screen
      Curses.setpos(0,0)     #メッセージを表示する座標指定
      Curses.addstr("自然に触れるのが好きです!")    #メッセージ
      #refresh     #画面への出力
      #system('pkill magick -U `whoami`')
      #setpos(0,0)
      #addstr("\n")
      #refresh
      #sleep(2)
    end
  else
    Curses.addstr(sprintf("1/2/0から選んでください\n"))
  end
end