RubyCocoa 初心者質問 ..
[2ch|▼Menu]
136:名称未設定
08/06/14 21:00:42 2EUD2BOn0
>>134-135
回答ありがとうございます。
早速実装してみました。

また別の質問なのですが
NSSpeechSynthesizer のsetRateで話す速度を設定したいのですが
環境設定のスピーチで設定できるしゃべる速度はどの範囲ですか?
よろしくお願いします。

137:名称未設定
08/06/14 21:47:50 m7rgqH2K0
>>136
それくらいは自分で試せば良いんじゃないの?


138:名称未設定
08/06/20 01:40:36 OPI2O2si0

スレリンク(mac板:85番)

139:名称未設定
08/07/06 02:31:53 qyBoLZXU0
sage 禁止

140:名称未設定
08/07/06 11:56:21 gQSlcM460
age


141:名称未設定
08/07/16 07:33:14 I7YB0jxQ0
age

142:名称未設定
08/07/28 23:23:21 NL8Skhv90
age

143:名称未設定
08/08/02 12:22:41 kC204Xtv0
RubyCocoaは使ってはいけない
MacRubyの登場でCocoa-Javaの香りがしてきた
なるべくObjectiveCに慣れて、次に備えるべし

144:名称未設定
08/08/02 23:07:19 c8ErBqo10
RubyOSAの質問していいですか?
Mac OS X Leopard (10.5.4) に、
sudo gem install rubyosa で RubyOSA 0.4.0 をインストールしましたが、
適当なスクリプトを実行すると Bus Error で落ちます。
たとえば、
irb -rubygems
>> require 'rbosa'
=> true
>> itunes = OSA.app('iTunes')
/Library/Ruby/Gems/1.8/gems/rubyosa-0.4.0/lib/rbosa.rb:530: [BUG] Bus Error
ruby 1.8.6 (2008-03-03) [universal-darwin9.0]

Abort trap

ググったらlibxml-ruby関連でも同じように Bus Error が起こるという
情報を見つけたので、sudo gem update して全部の gem をアップデート
してみましたが、症状は変わりません。何かご存知の方いらっしゃいましたら
ご教示いただければ幸いです。


145:名称未設定
08/08/06 01:19:42 uf+eVgCO0
>>144
再現しました(10.5.4 intel)。

libxml-rubyを古いもの(0.3.8.4)にしたら動きました。
とりあえず利用するだけなら
sudo gem install libxml-ruby --version 0.3.8.4で古いlibxml-rubyを入れておいて
lib/rbosa.rbのrequireしているところをgem 'xml/libxml', '= 0.3.8.4'に書きかえればよいかと。



146:144
08/08/07 07:26:19 0mECmV+F0
>>145

ありがとうございます。RubyOSAが使えるようになりました。
Excel 2008の操作に使えそうです。

147:名称未設定
08/08/13 19:17:35 2ggRDotU0
Cocoaで音声ファイルを再生するアプリケーションを作成したいのですが
どのようにすれば良いのでしょうか
簡易トーン・ダイヤラーの様な物を作りたいので携帯のボタンを押したときの
様にピッピッとボタンを押すたびに再生できる物が良いのですが。

148:名称未設定
08/08/14 00:53:57 I3mEPq/b0
NS::Soundと言うのが見つかりました
ありがとうございました。


149:名称未設定
08/08/26 00:49:11 z5yBxHke0
保守

PyObjCプロジェクトで、IBで作ったアクションを.pyにD&Dすると、
RubyCocoa用のメソッドに展開された。ヒドイヨハゲ。

150:名称未設定
08/08/28 04:10:01 r5ZlX/2+0
もし既出だったらすいません

お絵描きチャットをしたいのですが
いっつも回線が切断しましたという表示が出て始めることすら出来ません
エチャできてる人いたらどうしたらいいか等おねがいします

151:150
08/08/28 04:24:27 bPoAiUfmO
スミマセン。スレタイ読んでませんでした。
ちょうど回線も切断されているので、吊ってきます。
ちなみに使っているブラウザもURLもOSが何かすらも分かりません。

152:名称未設定
08/08/28 11:29:23 1s0ch5sa0
むしろ、どうやってここにたどり着いたか興味がある。

153:名称未設定
08/08/28 15:32:09 CbY6oV4O0
非常に趣深い。

>>152の言う通りなぜここに来たか知りたい。
OSとブラウザがわからないのはある意味理解できるけど、
その流れでURLがわからないってどういうこと?
っていうかこれらの用語がわかる人間は普通何を使ってるかわかるよねw


と、盛大につられてみました。

154:名称未設定
08/09/01 22:15:54 +kfzKA2m0
NSData.writeToFileのパラメータの指定方法がわかりません。
writeToFile:options:error:をwriteToFile_opstions_errorと書き換えて

filepath = OSX::NSString.stringWithString('/Users/homedir/test.pdf')
mask = Object.new
errorPtr = String.new
data.writeToFile_options_error(filepath, mask, errorPtr)

エラー
/System/Library/Frameworks/RubyCocoa.framework/Resources/ruby/osx/objc/oc_wrapper.rb:50:in `ocm_send': Cannot convert the argument #2 as '^@' to Objective-C (OSX::OCDataConvException)
from /System/Library/Frameworks/RubyCocoa.framework/Resources/ruby/osx/objc/oc_wrapper.rb:50:in `method_missing'
from test.rb:23

としました。
URLリンク(www.oomori.com)
を参考にしたのですが,
options: (unsigned int) maskの意味が解説を読んでもわかりません。
(「詳細は"Constants"にあります」とかいてるけど,その"Constants"ってどこ?状態)

optionsとerroはどのように指定すればいいですか?

155:名称未設定
08/09/01 23:29:47 Si43t95v0
>>154
filepath = '/Users/homedir/test.pdf'
mask = OSX::NSAtomicWrite
result, error = data.writeToFile_options_error(filepath, mask)

resultとerrorには

正常終了なら true, nil
エラーなら false, NSErrorオブジェクト

が返ってきます。
optionsの意味はXcodeについてるCocoaのマニュアルでも読んでくれ

156:154
08/09/02 21:17:30 B1hHzE6L0
>>155、サンクスです。
別の部分で意図した結果が得られません。環境は10.5

#!/usr/bin/ruby
require 'osx/cocoa'
OSX.require_framework "WebKit"

app = OSX::NSApplication.sharedApplication()
app.setDelegate(OSX::NSObject.alloc.init)

window = OSX::NSWindow.alloc.initWithContentRect_styleMask_backing_defer([100, 100, 300, 300], 15, 2, 0)
window.orderFrontRegardless()
webview = OSX::WebView.alloc.initWithFrame(window.contentView.frame)
window.contentView.addSubview(webview)

url = OSX::NSURL.alloc.initWithString('URLリンク(www.apple.com)<)
も試したけど,やっぱり真っ白け,,,

NSViewのdataWithPDFInsideRectは何か挙動がかわったのでしょうか?

157:名称未設定
08/09/02 22:14:20 agEX2R6R0
・NSApplicationをrunしてイベントループまわしてやらないとウインドウは描画されません。
・WebViewの読み込みは非同期なのでdelegateなどで終了を通知してもらうか、てきとうな秒数待つようにする必要があります。
・RubyCocoaのサンプルにdarkroom.rbという、ウェブをPNGとして保存するスクリプトがあるので参考にどうぞ。



158:154
08/09/02 23:52:49 B1hHzE6L0
>>157、サンクスです。
が、参考にしようとしたdarkroom.rbがエラーです。

2008-09-02 23:48:36.099 ruby[3309:10b] *** Assertion failure in -[WebHTMLView lockFocus], /SourceCache/AppKit/AppKit-949.33/AppKit.subproj/NSView.m:4755
2008-09-02 23:48:36.101 ruby[3309:10b] ActiveReload::DarkRoom::Processor#webView_didFinishLoadForFrame: OSX::OCException: NSInternalInconsistencyException
 - -[WebHTMLView(0x5d2660) lockFocus] failed with window=0x5bf860, windowNumber=-1, [self isHiddenOrHasHiddenAncestor]=0
/System/Library/Frameworks/RubyCocoa.framework/Resources/ruby/osx/objc/oc_wrapper.rb:50:in `ocm_send'
/System/Library/Frameworks/RubyCocoa.framework/Resources/ruby/osx/objc/oc_wrapper.rb:50:in `method_missing'
./darkroom.rb:99:in `capture_and_save'
./darkroom.rb:95:in `webView_didFinishLoadForFrame'
/System/Library/Frameworks/RubyCocoa.framework/Resources/ruby/osx/objc/oc_wrapper.rb:50:in `ocm_send'
/System/Library/Frameworks/RubyCocoa.framework/Resources/ruby/osx/objc/oc_wrapper.rb:50:in `method_missing'
./darkroom.rb:62:in `shoot'
./darkroom.rb:52:in `initialize'
./darkroom.rb:109:in `new'
./darkroom.rb:109
/System/Library/Frameworks/RubyCocoa.framework/Resources/ruby/osx/objc/oc_wrapper.rb:51: [BUG] Segmentation fault
ruby 1.8.6 (2008-03-03) [universal-darwin9.0]

<NSWindow: 0x5bf860>Abort trap



159:名称未設定
08/09/03 00:27:31 hS6p5Zfo0
>>158
Appleのは直ってないのか。。。
修正済みのがリポジトリにあるのでそちらを使ってみてください。
URLリンク(rubycocoa.svn.sourceforge.net)


160:名称未設定
08/09/10 07:18:05 KwINyegI0
MacRuby 0.3

161:名称未設定
08/09/10 22:26:50 n+/OMfLx0
>>160
macirbするとエラーが出るんですが…。
ググってみると、LANG=C macirb で大丈夫みたいだけど。

162:名称未設定
08/10/08 08:03:24 jCJuvFef0
age

163:名称未設定
08/10/20 01:18:51 j6j9nf8z0
ADC—Developing Cocoa Applications Using MacRuby
URLリンク(developer.apple.com)

164:名称未設定
08/11/26 05:43:26 CKOAGFoqi
保守

165:名称未設定
08/11/30 03:40:24 Nmq4wNui0
ageなきゃ落ちるよ

166:名称未設定
08/11/30 06:34:32 ylAtvlHZi
age

167:名称未設定
08/12/04 20:16:13 cmdrcErwO
>>166
   ?
  ∧∧
  (´・ω)
 _|⊃/(___
/ ヽ_(____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄


168:名称未設定
09/01/16 21:51:15 abaDZpaE0
保守

169:にゃあ
09/01/31 06:59:06 vTQa9G9W0
いまだ!169ゲットォォォォ!!! オマンコベロベロナメダーチンチンナメテー
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄    (´´
                  ∧∧       (´⌒(´
           ↑⊂(゚ー゚*)≡≡≡(´⌒;;;≡≡≡
        ⊆⊂´ ̄ ⊂ソ  (´⌒(´⌒;;
           ̄ ̄ ̄   ズザーーーーーッ

170:名称未設定
09/03/05 09:50:42 jN1vhbjs0
rubi-!

171:名称未設定
09/03/07 15:17:10 MSy2d4tM0
開発環境のおともとしてCocoaReplを使いたいと思うのですが
起動したときにまいかい以前入力した物がでていて困ります
これはどのようにすれば良いのでよすか?
すこし気になるのが試しにRubyCocoaのサイトからダウンロードしてきた
Exampleファイルから起動したときでもでてきます。これはもしかして自動的に
なにかのファイルをひらいているのでしょうか?
よろしくおねがいします

172:名称未設定
09/03/07 18:27:48 rzw/mIwv0
ホームディレクトリの.cocoarepl_scratch.rbをひらいてるのでしょう。
ReplController.rb の awakeFromNib の下から2行目にある
load_scratch
の行を削除するかコメントアウトせよ。
ついでに、いちいち保存されるのがいやなら show_result の最初の
store_scratch
も削除しとけ


173:171
09/03/07 20:04:33 MSy2d4tM0
ありがとう御座います。!!


174:名称未設定
09/03/07 21:34:41 MSy2d4tM0
RubyCocoaでDockのアイコンをクリックしたら:
アプリケーションが隠れていたら表示、ウィンドウが閉じていたら新規作成とするには
どのようにすれば良いのでしょうか?
URLリンク(blog.cocoa-study.com)
こちらのページを参考にいかのような物をウィンドウ表示を担当するコントローラクラスに
かいてみたのですがnibファイルを開いても反映されません
ib_action :applicationOpenUntitledFil do |sender|
@window.NSApplication.makeKeyAndOrderFront(nil)
end
よろしくおねがいします。



175:174
09/03/07 21:46:44 MSy2d4tM0
クリーニングしてみた所
反映はされました、しかしInterfaceBuilderでクラスからひっぱってWindowにつなげても
これは選択肢にでませんでした。どのようにすれば良いのかよろしくおねがいします。

176:名称未設定
09/03/08 01:43:30 rBsRDVjQ0
>>174
とりあえず ...UntitledFile ね。最後の e を忘れている。
返り値も ib_action じゃなくて bool 。
あと、これはアクションメソッドじゃないので、
クラスのアウトレット @window に対応する Window を IB で
つなげばいいだけです。
ドックのアイコンをクリックしたら、Cocoa のシステムが
自動的に app delegate の
applicationOpenUntitledFile:
を呼びます。だからあなたはそれを実装するだけです。

177:名称未設定
09/03/09 22:53:48 28xfUO3i0
MacRuby 0.4
URLリンク(www.macruby.org)

178:名称未設定
09/03/26 07:00:35 DZj12hiH0
class AClass < OSX::NSObject
def AClass.initialize
puts "+(void)initialize"
end
end

AClass.initializeはランタイム側から
呼んでもらえないんでしょうか?

179:名称未設定
09/03/26 12:26:18 UUCg7QO00
>>178
うん、呼ばれません。なぜかというと AClassクラス自体はObjective-Cのオブ
ジェクトじゃないからです。そのかわりに

class AClass < OSX::NSObject
puts "AClassをロード中"
end

こういうふうに書いとくと、このコードがRubyにロードされたときに実行され
るので、initialize にまあまあ近いタイミングで実行されるよ。



180:名称未設定
09/03/26 16:00:36 ZtaxedWsi
>>178
MacRubyだと、Rubyのオブジェクトは全部Objective-Cのオブジェクトなので、そのinitializeも呼ばれるはず

181:名称未設定
09/03/26 19:09:12 DZj12hiH0
>>179, 180
なるほど、私の勉強不足でしたが納得です。
にしてもRubyCocoa楽しいですね。

ありがとうございました。


最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5213日前に更新/63 KB
担当:undef