SSブログ

初級RubyCocoa〜伍 [MacOSX]

さて、前回から引き続いて、実装部分を付け加えて動くようにしましょう。

基本的なところは同じなので、下記のサイトも参照すると、スクリーンショットも分かりやすくて良いかと思います。
 http://limechat.net/rubycocoa/tutorial/



適当なファイル名を付けてRubyスクリプトをプロジェクトに加えます。以下のファイルをコピペして保存します。

class MyController < OSX::NSObject
  ib_outlets :messageField

  def awakeFromNib
    @messageField.stringValue = ''
  end

  ib_action :greeting do |sender|
    @messageField.stringValue = 'Merry Christmas!'
  end
end


XcodeからMainMenu.nibを開いて、Interface Builderを立ち上げます。

まずNSObjectをGUI側にも持たせます。Libraryウィンドウを開いて、Objects > Library > Cocoa > Objects & ControllerのObjectをドラッグして、MainMenu.nibのウィンドウにドロップします。

Object.jpg

そのNSObjectをMyControllerクラスに指定します。すると、持っているアウトレットとアクションが姿を現します。ここいらへんの連携はRubyでも上手くいっているので問題なく動きます。実はこういうところは手打ちでって話になると思っていたんですがらくちんですね。

MyController.jpg

テキストを表示する部品をウインドウに貼付けます。ライブラリから、Objects > Library > Cocoa > Views & Cells > inputs & valuesの中のものを選んで、実際に表示させるウィンドウのところにドラッグアンドドロップしてください。レイアウトとかをアシストしてくれると思います。

貼付けたら、MyControllerオブジェクトのアウトレットであるmessageFieldと、ウインドウにある部品とを結びつけます。右クリックして出てくる黒いウィンドウを出します。Controlボタンとマウスのドラッグで、線をにーと延ばして結びつけてあげてください。これでOutletとウィンドウの表示部品に対応付けができました。

textfield.jpg

同様に、Objects > Library > Cocoa > Views & Cells > Buttonsから好きなボタンを選んで、ウインドウにボタンを張り付け、MyControllerオブジェクトのアクション、greetingと結びつけます。

button.jpg

コンパイルしたら、ボダンを押すと、表示部品にMerry Christmas!と表示されます。
今回はいまいち分かりづらいFile's OwnerとかFirst Responderとか使わなかったから、一目瞭然だと思います。



一通り見てきましたが、何かお気づきの点がありましたらコメントまでお願いします。CocoaにしてもRubyにしても大して熟練してないので何をお答えできるかどうかが疑問ですが…。この先、MacRubyとかも視野に入れてちょっと調べてみたいと思っています。もっとAppleからフィーチャーされれば、RubyCocoaを超える存在なんじゃないかなと思っております。

タグ:Ruby
nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。