もっとRubyCocoaを触ってみる

皆さんも既にLeopardを入手されただろうか？インストールも終わり、新機能を満喫していることと思う。

では、前回に引き続き、RubyCocoaの紹介をしていこう。今回は、もっともっとRubyCocoaを触ってみよう。

下準備として、前回紹介した通りに、CocoaReplを立ち上げて欲しい。さらに、ウインドウも表示しておこう。次のコードを入力して動作させておく。前回も使ったコードだ。

window = OSX::NSWindow.alloc.initWithContentRect_styleMask_backing_defer([100, 100, 300, 300], 15, 2, 0) window.makeKeyAndOrderFront(nil)

ウインドウが表示されたら、使いやすい大きさに調整しておこう。

ムービーの再生

では、RubyからMac OS Xの機能をどんどん使ってみることにする。

まずは、ムービーを再生してみよう。これにはQuickTimeを使う。QuickTimeを使えば、主要なムービーやオーディオのフォーマットをほぼすべて再生することができる。

次のように入力してほしい。行の終わりでは、「Cmd + Return」を忘れずに。

OSX.require_framework 'QTKit' movieview = OSX::QTMovieView.alloc.initWithFrame(window.contentView.frame) window.contentView.addSubview(movieview) movie = OSX::QTMovie.alloc.initWithFile_error('ファイル名', nil) movieview.setMovie(movie)

最初の行にあるのがQuickTimeフレームワークの読み込みだ。QuickTimeの機能を簡単に利用できる、QT Kitフレームワークを利用している。4行目の「ファイル名」のところには、ムービーファイルのパスを設定してほしい。絶対パスで入力すること。

これで、ウインドウにコントローラ付きのムービープレイヤーが表示され、あとは自由に再生できる（画像1）。または、コード中に出てくるムービーオブジェクトを使って、プログラムから操作することもできるぞ。

画像1 ムービーが表示されただろうか 画像1 ムービーが表示されただろうか

次はPDFを表示してみよう。