#!/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