[#44237] Float を利用するRubyプログラム — SASADA Koichi <ko1@...>

 ささだです.

16 messages 2007/11/17
[#44241] Re: Float を利用するRubyプログラム — SASADA Koichi <ko1@...> 2007/11/19

 ささだです.

[ruby-list:44230] Re: WinXPでのCursesプログラム

From: "Masao Ochi" <ochi@...>
Date: 2007-11-16 01:14:53 UTC
List: ruby-list #44230
越智です。ご解答ありがとうございます。

> たぶん対応してみたので、私を信用する覚悟があるならば、

もう心の底から信用して、ばっちり試してみました!
結果としては大成功です。
試してみたコードを後ろに付けておきますね。

こんなに早く対応いただけるなんて、Rubyコミュニティってやっ
ぱりすごいですね。
なかむら(う)さん本当ありがとうございました。

------------------------------------------------------------
テスト用のコード(ctrl+cで終わります)
------------------------------------------------------------
require "curses"
include Curses

pos_x = 15
pos_y = 15

init_screen
noraw
stdscr.keypad(true)

while true
  clear
  setpos(pos_y, pos_x)
  addstr("hello world")
  refresh
  key = getch
  case key
  when 259 # up
    pos_y -= 1
  when 260 # left
    pos_x -= 1
  when 261 # right
    pos_x += 1
  when 258 # down
    pos_y += 1
  when 3 # ctrl+c
    break
  else
    # noting
  end
end
close_screen


07/11/15 に U.Nakamura<usa@garbagecollect.jp> さんは書きました:
> こんにちは、なかむら(う)です。
>
> In message "[ruby-list:44224] WinXPでのCursesプログラム"
>     on Nov.15,2007 17:24:38, <ochi@casareal.co.jp> wrote:
> | 色々調べて、ncursesというライブラリならkeypad()という設定メソッド
> | を呼び出すと矢印キーが有効になるということが分かり、もしかすると
> | と思い調べてみるとRubyのCursesにも数年前にkeypad()メソッドは
> | 取り込まれているようです。
> | しかしながらこれを使ってみると
> | keypad() function is unimplemented on this machine
> | というエラーが出てしまい動作しません。
> | このメソッドはWinXPでは動作しないのでしょうか?
> | なにか回避策対応策はありますでしょうか?
> |
> | 【環境】
> | WindowsXP pro sp2
> | ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-mswin32]
> | pdcurses-2.60(dllをrubyのbinフォルダに置いています)
> | cmd.exeにて動作
>
> たぶん対応してみたので、私を信用する覚悟があるならば、
>   http://www.garbagecollect.jp/~usa/curses.so
> をダウンロードして、rubyをインストールしたディレクトリ以下の
>   lib\ruby\1.8\i386-mswin32
> または
>   lib\ruby\site_ruby\1.8\i386-msvcrt
> に置いて試してみてください。
> Curses::Windows#keypadメソッド自体は追加されているはずですが、
> 正常に動くかどうかまではよくわかりません。
>
>
> 私を信用できない場合は、1.8.7もしくは1.9.1のリリースまでお待
> ちください :)
>
>
> それでは。
> --
> U.Nakamura <usa@garbagecollect.jp>
>
>
>
>

In This Thread

Prev Next