Nyle Screen - spoolkitamura/nyle-doc-jp GitHub Wiki

Nyle::Screen

スクリーンクラス

描画用の画面を表すクラスです。
(Nyle::Screenは Gtk::DrawingAreaから派生したサブクラスです)

Nyle::Screen


コンストラクタ

new(width, height, {options})

引数

名前 説明 有効値 デフォルト値
width スクリーンの幅 640
height スクリーンの高さ 480

 

オプション({options})

名前 説明 有効値 デフォルト値
bgcolor スクリーンの背景色 「#RRGGBB」の16進形式の文字列コードまたは色を表すシンボル(Appendix3を参照) :WHITE
trace スクリーンの描画軌跡属性 true     描画軌跡ありfalse    描画軌跡なし false

 

使用例

# デフォルトサイズ(640x480)のスクリーンを生成します。
screen = Nyle::Screen.new
# 400x300のサイズのスクリーンを生成します。
screen = Nyle::Screen.new(400, 300)
# 400x300のサイズで背景色が黒のスクリーンを生成します。
screen = Nyle::Screen.new(400, 300, {bgcolor: :BLACK})
# 400x300のサイズで描画軌跡のあるスクリーンを生成します。
screen = Nyle::Screen.new(400, 300, {trace: true})
# デフォルトサイズ(640x480)で背景色が黒く描画軌跡のあるスクリーンを生成します。
screen = Nyle::Screen.new({bgcolor: :BLACK, trace: true})

インスタンスメソッド

show_all({options})

フレーム(Nyle::Frame)を生成してスクリーンを表示します。

オプション({options})

名前 説明 有効値 デフォルト値
title フレーム(Nyle::Frame)の表示タイトル 'Nyle'
interval 画面描画の時間間隔(ミリ秒) 5~1000 15(NYLE_INTERVALの説明も参照してください)

 

使用例

# 'Nyle Application'というタイトルで
# 画面描画の時間間隔が 30ミリ秒のフレーム(Nyle::Frame)を生成して
# スクリーンを表示します。

screen.show_all({title: 'Nyle Application', interval: 30})

 

start(*args)

スクリーン(Nyle::Screen)の初期設定から Nyleアプリケーションの開始まで
下記の一連の処理をまとめておこないます。

  • Nyle::Screen#setupメソッドの実行
  • Nyle::Screen#show_allの実行
  • Nyle.mainの実行

単一のスクリーン(Nyle::Screen)のみで構成されるような単純な Nyleアプリケーションを開始させるための糖衣構文です。
下記の2つの構文は同じ意味になります。

screen.setup
screen.show_all(title: 'Nyle Application')
Nyle.main
screen.start(title: 'Nyle Application')

引数

名前 説明 有効値 デフォルト値
*start スクリーン(Nyle::Screen)のshow_allに渡される任意の引数

 

使用例

# スクリーン(Nyle::Screen)の初期設定をおこない、
# 'Nyle Application'というタイトルで
# 画面描画の時間間隔が 30ミリ秒のフレーム(Nyle::Frame)を生成して
# Nyleアプリケーションを開始します。

screen.start({title: 'Nyle Application', interval: 30})

抽象メソッド

下記の各メソッドは、Nyle::Screenを継承したサブクラス内で処理を実装するためのものです。

setup

スクリーン(Nyle::Screen)の startメソッドから呼び出される初期設定用メソッド

draw

フレーム(Nyle::Frame)から定期的に呼び出される描画用メソッド

update

フレーム(Nyle::Frame)から定期的に呼び出される更新用メソッド

suspend

フレーム(Nyle::Frame)からスクリーンが外される際に実行されるメソッド

resume

フレーム(Nyle::Frame)にスクリーンがセットされる際に実行されるメソッド