- 1 名前:名称未設定 mailto:sage [2008/01/24(木) 01:47:00 ID:/Ae+OMPn0]
- 初心者は教えてくれる方への感謝を忘れずに。
上級者も初心者だった頃の気持ちを忘れずに。 前スレ Cocoaはさっぱり!!! version.8 pc11.2ch.net/test/read.cgi/mac/1179498292/
- 2 名前:名称未設定 mailto:sage [2008/01/24(木) 02:06:19 ID:zBsL8SS+0]
- 2?
- 3 名前:名称未設定 [2008/01/24(木) 09:31:19 ID:s+4xNGMC0]
- 今日は寒いから、ラム入りココア!
- 4 名前:名称未設定 mailto:sage [2008/01/24(木) 09:38:09 ID:yVuwS2iA0]
- なぜMacプログラミングはこんなに寂れてしまっているのか
www.vector.co.jp/vpack/whats/
- 5 名前:名称未設定 mailto:sage [2008/01/24(木) 09:41:49 ID:T1Kwwqvq0]
- Macに限らずWindowsでもだが、Vectorはもう見限られてる。
- 6 名前:名称未設定 mailto:sage [2008/01/24(木) 10:00:53 ID:uLUkYs720]
- ダウンロードにたどり着くまでにエロゲの広告が一杯出るからなあ
- 7 名前:名称未設定 mailto:sage [2008/01/24(木) 10:41:24 ID:vV8dED/00]
- vectorの存在忘れてた
昔は便利だったのだろうが、昨今ではどうだろうね
- 8 名前:名称未設定 mailto:sage [2008/01/24(木) 11:47:27 ID:/Xbx9Tjk0]
- Vector は掲載を申し込んでから実際に掲載されるまでに1ヶ月かかるんだよ。
アップデート時も同様。 MacUpdate とか Version Tracker は数時間なのに。
- 9 名前:名称未設定 [2008/01/24(木) 19:42:14 ID:4xv9sIsr0]
- どこから登録したらいいか、すぐ分からなかったのでやめた。
登録させたくないとしか。
- 10 名前:名称未設定 [2008/01/24(木) 20:12:29 ID:nQjPjB6N0]
- M女史ですら登録できてるのに
- 11 名前:名称未設定 mailto:sage [2008/01/24(木) 20:51:54 ID:e2gLsBWo0]
- NSOutlineViewで階層表示、ドラッグ&ドロップで並び替えの
良いサンプルはないでしょうか? 機能を実現するための考え方というか仕組みが分からず 苦労しています。 NSTableViewでのドラッグ&ドロップで並び替えはわかったのですが。
- 12 名前:名称未設定 mailto:sage [2008/01/24(木) 22:52:54 ID:Cl70dvtl0]
- >>11
LeopardならAppleのsample codeのAbstractTree、SourceView Leopardより前なら古いけれどDragNDropOutlineViewが Developer/Examples/AppKit/DragNDropOutlineView にあります
- 13 名前:名称未設定 mailto:sage [2008/01/25(金) 19:40:32 ID:S+ZRut250]
- なんか日本でcocoaのプログラマーって10人いないような気がする。
- 14 名前:名称未設定 mailto:sage [2008/01/25(金) 19:55:32 ID:FluJhFso0]
- すげーな
お前も俺もレアモノだぜ
- 15 名前:名称未設定 mailto:sage [2008/01/25(金) 20:17:12 ID:rI2glRe80]
- いくらなんでも希少種と呼ばれる麻薬取締官より少ないってことはあるまい。
- 16 名前:名称未設定 mailto:sage [2008/01/25(金) 20:41:30 ID:D6FaF35S0]
- それはないw
- 17 名前:名称未設定 [2008/01/25(金) 20:46:08 ID:efY+uiCx0]
- Javaだったら、Socketとか、SocketChannelを使うケースって、
Cocoaだと、どうするのですか。 Cを使う必要があるのでしょうか。
- 18 名前:名称未設定 mailto:sage [2008/01/25(金) 22:28:04 ID:lGCqdeBy0]
- Cを使った方が間違いないと思うよ
むかーし、CocoaだけでXMLやSocketを実現しようとしたけど、 バグっぽくて嫌になったorz C++のライブラリを使ったObjC++がおすすめ
- 19 名前:名称未設定 mailto:sage [2008/01/25(金) 23:27:19 ID:dCMPysux0]
- >>13
「Cocoaで食ってるプロ」なら10人いないかも
- 20 名前:名称未設定 mailto:sage [2008/01/26(土) 00:11:21 ID:42x0AZNA0]
- >>17
client も server もCocoa だけで済むなら、Distributed Objects つかうと めちゃめちゃ簡単ですよ。
- 21 名前:名称未設定 mailto:sage [2008/01/26(土) 00:45:22 ID:42x0AZNA0]
- developer.apple.com/documentation/Cocoa/Conceptual/DistrObjects/DistrObjects.html
のへんとか。
- 22 名前:名称未設定 mailto:sage [2008/01/26(土) 02:52:40 ID:zd6T2u+m0]
- Cocoaだけで完結するプロジェクトなんてないでしょう
- 23 名前:名称未設定 mailto:sage [2008/01/26(土) 09:25:36 ID:42x0AZNA0]
- ええっと僕に言われてるのだとすると、
Cocoa だけ、と書いたのは、プロジェクトが全部ココアだけ、 ということではなくて、 Client も Server も Cocoa つかったソフトで良ければ、ということです。 実際に、案外のフリーウェアでサポートされてる LinkBack とか Growl とかは Cocoa の Distributed Objects で実装されてるけど、 Carbon app とかスクリプトからも使えます
- 24 名前:名称未設定 mailto:sage [2008/01/27(日) 01:57:57 ID:FVS3vl130]
- 暇だから日本人のCocoaプログラマを知ってるだけあげてみるか。
mkinoさん、荻原さん、nakamuxuさん まだまだいるはずだけどぱっと出てこないもんだなあ。もっとあげられる暇な人いる?
- 25 名前:名称未設定 mailto:sage [2008/01/27(日) 02:08:39 ID:jtZNwbED0]
- Digitalians' Alchemyの人。
- 26 名前:名称未設定 mailto:sage [2008/01/27(日) 02:41:19 ID:mqS2hNH70]
- 俺
- 27 名前:名称未設定 mailto:sage [2008/01/27(日) 02:48:04 ID:Kw+jrJKi0]
- 10人どころか5人もいねえw
- 28 名前:名称未設定 mailto:sage [2008/01/27(日) 04:47:59 ID:nttUWrdb0]
- hetimaさん俺
- 29 名前:名称未設定 mailto:sage [2008/01/27(日) 08:44:22 ID:InynCMyW0]
- 名取り、さわっち、まさき
- 30 名前:名称未設定 mailto:sage [2008/01/27(日) 08:50:27 ID:sMOKTW0+0]
- プログラミングする気がないなら無理に来なくていいんだよ
- 31 名前:名称未設定 mailto:sage [2008/01/27(日) 10:02:11 ID:uLYFX0yW0]
- 松本さんとか永野さんとか
- 32 名前:名称未設定 mailto:sage [2008/01/27(日) 10:47:06 ID:CW8LN0Lg0]
- 俺俺、俺だよ、俺
- 33 名前:名称未設定 mailto:sage [2008/01/27(日) 13:04:54 ID:ddsvCdr30]
- IBでボタンにリターンキーを割り当てると、
テキストフィールド上で文字の決定でリターンキーを押した時にもボタンが反応してしまいます。 どうやって回避したらいいんでしょうか? あと、矢印キーに至ってはボタンに割り当ててしまうと テキストフィールドで矢印キーでの操作がまったくできなくなってしまう始末です。
- 34 名前:名称未設定 mailto:sage [2008/01/27(日) 13:16:25 ID:Z+4QpQ0X0]
- ボタンにキーを割り当てるのは良くない気がする。
NSWindow サブクラス化とかでキーイベントひろって、ターゲットを呼び出せば?
- 35 名前:名称未設定 mailto:sage [2008/01/27(日) 14:10:58 ID:NSDBpLCP0]
- >>33
そりゃサブクラスのファーストレスポンダあたりの設定がおかしいんじゃまいか。 変換決定のリターンキーではデフォルトボタンは反応しないよ。
- 36 名前:名称未設定 mailto:sage [2008/01/27(日) 16:43:50 ID:3qPDxaPt0]
- NSなんたらviewのサブクラスを作って右クリックでコンテキストメニューを
表示させているのですが、10.4だと表示されて10.5だと表示されません。 なにか仕様が違うのでしょうか?
- 37 名前:名称未設定 mailto:sage [2008/01/27(日) 16:47:48 ID:oxF7lnRH0]
- また仕様ですか君か。
違っているから、自分で調べなさい。
- 38 名前:名称未設定 mailto:sage [2008/01/27(日) 18:40:43 ID:YX2EedA00]
- >>33は変換確定ではなくて改行の事を言っているのでは?
NSTextFieldじゃなくてNSTextViewを使えばどう?
- 39 名前:名称未設定 mailto:sage [2008/01/27(日) 18:42:05 ID:Se/+uO9l0]
- 37はMSMVP工作員
- 40 名前:名称未設定 mailto:sage [2008/01/27(日) 22:46:02 ID:ddsvCdr30]
- >>34
key EquivだとIB上でできるので楽だと思ったのですが、あまり良くないのですね; >>35 変換決定でなくてアクションを送るためにリターンキーで決定する時、ということでした。 >>38 NSTextViewを使ったことがなかったので、勉強してみます。 みなさんありがとうございました。 で、問題だった部分ですが、 テキストフィールドにアクションのターゲットを設定してやれば解決しました。 ターゲットがあればそちらにレスポンダチェインが走って(?) ターゲット先でなんらかのアクションが起きてチェインが終了、他のボタンにはチェインは送られない ということなのかなと、とりあえずは解釈しました。
- 41 名前:名称未設定 mailto:sage [2008/01/27(日) 22:55:30 ID:ddsvCdr30]
- あ、ちなみに矢印キーをボタンにセットすると
NSTextFieldとNSTextViewどちらでも矢印キーが使えなくなってしまうみたいです。
- 42 名前:名称未設定 mailto:sage [2008/01/28(月) 10:06:56 ID:/ciPWHQy0]
- LeopardにしたらsetControlTint:NSGraphiteControlTintが効かんようになっとるじゃないか
- 43 名前:名称未設定 mailto:sage [2008/01/28(月) 22:09:02 ID:YFjOEr6f0]
- アレイコントローラーにデータがロードされた直後に
一回だけ処理をしたいのですがさっぱりです。
- 44 名前:名称未設定 [2008/01/29(火) 13:33:05 ID:14AFSb+t0]
- Windowを最前面に固定するのってどうするの?
- 45 名前:名称未設定 mailto:sage [2008/01/29(火) 14:59:24 ID:FsQS6A+l0]
- CALayer の contents に登録してある CGImageRef から
CIImage に変換したいんだけど, CIImage *image = [CIImage imageWithCGImage: layer.contents] であってますかね? やりたいことは,CoreAnimation の2つのレイヤーから画像をとり出して, CIFilter かまして,CoreAnimation の結果格納用レイヤーに画像をはめ込みたいのです.
- 46 名前:名称未設定 mailto:sage [2008/01/29(火) 16:04:52 ID:/eQnXvPk0]
- やっと直った。Xcode3+IB3
Cocoaアプリケーションチュートリアル developer.apple.com/jp/documentation/Cocoa/Conceptual/ObjCTutorial
- 47 名前:名称未設定 mailto:sage [2008/01/29(火) 16:10:32 ID:aFFUaCVD0]
- >44
// スクリンセーバーよりも前に出せ [theWindow setLevel:9999];
- 48 名前:名称未設定 mailto:sage [2008/01/29(火) 16:14:44 ID:waybUL+d0]
- >>46
しかし、なんだこの中華なフォントは?
- 49 名前:名称未設定 mailto:sage [2008/01/29(火) 16:15:40 ID:/eQnXvPk0]
- 国際化って奴だろ。
- 50 名前:名称未設定 mailto:sage [2008/01/29(火) 19:50:55 ID:14AFSb+t0]
- >47
ありがとう。 最前面のちっちゃいメモがあればいいと思ってたので助かった
- 51 名前:45 mailto:sage [2008/01/29(火) 22:55:26 ID:Weo8Bh4n0]
- 自己解決しました.キャストがないだけだった orz
CIImage *image = [CIImage imageWithCGImage: (CGImageRef)layer.contents]
- 52 名前:名称未設定 mailto:sage [2008/01/30(水) 00:06:41 ID:kQnUgB310]
- >>46
やっと直ったじゃなくて、リンク切れてたから おとといぐらい ADC に連絡したんだけど。 24時間ぐらいで直したよ、って返事来てたよ。 というわけで皆さんも ADC にじゃんじゃん連絡しましょう。
- 53 名前:名称未設定 mailto:sage [2008/01/30(水) 08:44:26 ID:8y/Wb65A0]
- HMDTつならがない...
- 54 名前:名称未設定 mailto:sage [2008/01/30(水) 09:12:46 ID:ggAgLyT80]
- つながるけど?
>>52 ADCって日本語スタッフいるの?直接本家ADCに連絡すればいいんすか?
- 55 名前:名称未設定 mailto:sage [2008/01/30(水) 11:23:33 ID:kQnUgB310]
- 直接本家に言ったら直してくれたよ。
- 56 名前:名称未設定 mailto:sage [2008/01/30(水) 13:57:14 ID:ggAgLyT80]
- サンクス、積極的に連絡してきます
たまにリンク切れとかあるんすよね
- 57 名前:名称未設定 mailto:sage [2008/01/31(木) 00:39:07 ID:ut76z/B00]
- NSOpenpanel について質問させて下さい。
何か開くと、ポップアップメニューの「最近使った場所」に自動的に追加されますが、 この情報はどこに保存されているのでしょう? ~/Library/Preferences/(BundleIdentifier).plist には含まれていないようなのです。 OS 10.4.11 Xcode 2.5
- 58 名前:名称未設定 mailto:sage [2008/01/31(木) 00:49:48 ID:5dWW8izh0]
- NSRecentDocumentRecords?
- 59 名前:57 mailto:sage [2008/01/31(木) 00:54:09 ID:ut76z/B00]
- >>58
それはファイルメニューの「最近使った項目」のほうですよね。 僕が言ってるのはNSOpenPanelのタイトルバー下にあるポップアップメニューのです。 で、自己レスですが、色々試してたら気付きました。この情報は全てのアプリで共通なんですね。 ~/Library/Preferences/.GlobalPreferences.plist の NSNavRecentPlaces にありました。 自分で編集できないかと思ったんですが、他のアプリと共通なら (NSUserDefaultでできるのかもしれませんが)すべきでないんでしょうね。
- 60 名前:名称未設定 mailto:sage [2008/02/01(金) 12:39:56 ID:JVdTTK6m0]
- Cocoaというか、プログラミング自体初めてなんだけど難し過ぎて挫折したw
サイト参考にして簡単な計算やHelloworld、 簡単なGUI作ってボタン押したら数字がtextviewに表示されるのとかやったけど、 ファイル読み込んでそれを表示させたり、編集できるようにしたり、とかなると、 もう訳分からない単語ばかり出てきて頭が痛くなったw とりあえず、IBでGUIだけでも完成系に近いものを組み立ててそのままにしてる。 プログラミングできる人、本当に尊敬するわ。
- 61 名前:名称未設定 mailto:sage [2008/02/01(金) 13:18:34 ID:6z2zxgjy0]
- >>60
俺も全くわからなかったが、ヒレガス本読んだらかなりできるようになった。 プログラミング初めてならCからやった方がいいね。
- 62 名前:名称未設定 mailto:sage [2008/02/01(金) 13:19:28 ID:TGU2uzhR0]
- まずは住所録ぐらいから始めてみては?
いきなり目指すアプリを作るのは大変ですよ。 普通(タイトルバーや左上にボタンがついた)のNSWindowを フルスクリーンにしたり元のWindowに戻したりするには どうすれば良いのでしょうか? ネットで探すと別途でNSWindowをallocして初期化でボーダレスに したりしているのが多いのですが、そうではなくて例えばプレビューで表示させている ウインドウをそのままフルスクリーンにしたいのです。 どうかよろしくお願いします。
- 63 名前:名称未設定 mailto:sage [2008/02/01(金) 13:40:03 ID:gj02vTeJ0]
- レパードなら NSView の
enterFullScreenMode:withOptions: で出来ますが、レパード以前だと別途 alloc しか仕方がないと思います。 別途 alloc でもそんなに面倒くさくないですよ。 [newWindow setContentView:[oldWindow contentView]] とかするとオッケーだったと思います。
- 64 名前:名称未設定 mailto:sage [2008/02/01(金) 13:41:28 ID:JVdTTK6m0]
- レスサンクスです。
>>61 C言語ですか、、、。道のりはかなり長そうですね、、。 ヒレガス、、ちょっとググって見ますね。 ありがとうございます。 >>62 住所録ではないですが、 TableViewを使って、左側に名前、右側に収入を入力(記録)できるものは作ってみました。 ビデオをチュートリアルを参考にしたんですけどね、、。 作りながら各文がどういった動作をさせているのか 説明を聞きながら理解しようとして作成しましたが、やはり初めて一週間ちょっとだと 難しいですね。ややこしいというか。これがパッと分かって簡単だと感じる人ってすごいです。 ちなみに参考にした動画はこれです。 ttp://revver.com/u/masna/ ここのNSArrayController & Cocoa Bindings Tutorialというビデオです。 ほかにもいろいろ動画がありました。
- 65 名前:名称未設定 mailto:sage [2008/02/01(金) 14:03:06 ID:5TPP70fY0]
- 俺も最近Cocoa始めたけど
NSなんたらController系が逆にわかりにくくて 手書きでちまちまコントローラを書いてしまう
- 66 名前:名称未設定 mailto:sage [2008/02/01(金) 14:06:51 ID:JVdTTK6m0]
- 手書きで書いてしまうということは、
プログラミングに関する知識はあったということなんですかね。 やっぱり最初からCocoaに飛び込むのは無謀だったか、、w
- 67 名前:名称未設定 mailto:sage [2008/02/01(金) 14:32:40 ID:5TPP70fY0]
- いやー最初の絶望感は自分も味わったからわかるw
Cocoaの初心者向けサイトって見てもあんまり噛み砕いた説明してないよね。 プログラミング自体完全に初めてなんだったらいきなりGUI付きのアプリより Terminalで動かすCUI専用のツールをCで書いてみるとかから始めてみたらどうだろう。
- 68 名前:名称未設定 mailto:sage [2008/02/01(金) 14:39:06 ID:nIkc8tTq0]
- >>65
ありすぎて困る
- 69 名前:名称未設定 mailto:sage [2008/02/01(金) 15:17:37 ID:C/yNXutt0]
- アップルのセミナー、全部取れた!
有給使って行ってくるよ!
- 70 名前:名称未設定 mailto:sage [2008/02/01(金) 15:36:22 ID:pOmNc0iY0]
- Leopardになってから何かXcode壮絶に変化した気がする。
Tigerの時はOSをさかのぼっても10.3止まりだったのが OSX10.1用にコンパイルできたり、カスタマイズがやりやすくなってる印象。 Interface Builderあたりも結構、仕様が変わったのねぇ
- 71 名前:名称未設定 [2008/02/01(金) 19:15:50 ID:2iNcArMz0]
- 楽しいcocoaプログラミングを読みながら基本的な用語を理解しようとしてる
んだが、俺の理解&例えが正しいかちょっとおまいら見てみてください [メソッド(インスタンスメソッド)]を使って[インスタンス変数]を[クラス]という設計図の 中に書く(定義する)。これをインスタンス化してできるものが[インスタンス]。 ↓ [英語]を使って[文章]を[原稿]の中に書く。 これをプリントアウトしてできるものが[本]
- 72 名前:名称未設定 mailto:sage [2008/02/01(金) 19:18:33 ID:9gQ7inmn0]
- >>62
普通のNSWindowをフルスクリーンぽく表示するならこんな感じでたぶん出来ます NSWindowのサブクラスで - (void)setFullScreen:(BOOL)b { fullscreen = b; if (!fullscreen) { [self setShowsResizeIndicator:YES]; [NSMenu setMenuBarVisible:YES]; [self setFrame:NSMakeRect(0,0,500,500) display:YES]; } else { [NSMenu setMenuBarVisible:NO]; [self setFrame:NSZeroRect display:YES]; [self setShowsResizeIndicator:NO]; } } -(NSRect)constrainFrameRect:(NSRect)frameRect toScreen:(NSScreen *)aScreen { if (fullscreen) { NSRect result = [[NSScreen mainScreen] frame]; if (![NSMenu menuBarVisible]) result.size.height+= 22; return result; } else { return [super constrainFrameRect:frameRect toScreen:aScreen]; } } あとはsetHidesOnDeactivate:とかsetLevel:をお好みに応じて。
- 73 名前:名称未設定 mailto:sage [2008/02/01(金) 19:50:51 ID:/sxPQuGn0]
- >>71
さっぱり分からん例えだ…オブジェクト指向言語の入門書を読んだ方が良いかも。 クラス:工場ラインと設計図 インスタンス:カスタマイズド製品 クラスメソッド:インスタンス化(製品製造)したり廃棄とか… インスタンス変数:カスタマイズ項目 インスタンスメソッド:入出力系(カスタマイズ状態によって応答を変えることができる) みたいな感じかな?補完修正よろ
- 74 名前:名称未設定 [2008/02/01(金) 20:05:15 ID:xnZLBzPn0]
- >>73
私の理解はこうです。 クラス:たいやきの型 インスタンス:たいやき クラスメソッド:たいやきの型の火加減調整 インスタンス変数:たいやきのあんこの量 インスタンスメソッド:たいやきのあんこの量調整
- 75 名前:名称未設定 mailto:sage [2008/02/01(金) 20:24:54 ID:5TPP70fY0]
- >>74
たいやきをたこ焼きに変えただけで俺のイメージと全く同じで笑った
- 76 名前:名称未設定 mailto:sage [2008/02/01(金) 20:32:49 ID:TraSyxiD0]
- クラス:ロボットの設計図
インスタンス:完成したロボット クラスメソッド:ロボットの生産命令 インスタンス変数:ロボット各部の部品 インスタンスメソッド:ロボットの動作の定義(前ボタンを押したら前進、下ボタンでしゃがむ、とか)
- 77 名前:名称未設定 mailto:sage [2008/02/01(金) 20:34:30 ID:B7VDsqsz0]
- OOのたとえ話なんて何のたしにもならん。
言葉遊びしてる暇があったらリファレンス読みこなせ。
- 78 名前:名称未設定 mailto:sage [2008/02/01(金) 20:47:44 ID:5TPP70fY0]
- 言葉遊びとは違うでしょ
触り始めに知識ばっか詰め込んでも その知識の使い方がわからないんじゃ意味がない もちろん量を読むのは大事だけれど
- 79 名前:名称未設定 mailto:sage [2008/02/01(金) 20:51:30 ID:l9eCdrlK0]
- 複数のロボットが共同してひとつの仕事をこなす。
- 80 名前:名称未設定 mailto:sage [2008/02/01(金) 20:54:13 ID:UH/1hOjR0]
- 比喩で解った気になってるとな、後でなぁ。
- 81 名前:名称未設定 mailto:sage [2008/02/01(金) 20:56:09 ID:UH/1hOjR0]
- >>78
>>73, >>76 言葉遊びしてるが。
- 82 名前:名称未設定 mailto:sage [2008/02/01(金) 21:18:09 ID:x3DHvtPP0]
- メモリがリークするってのは、食いきれないたい焼きがどんどん増えていって、
地球上がたい焼きで溢れかえる、と言う認識でよろしかったでしょうか
- 83 名前:名称未設定 mailto:sage [2008/02/01(金) 21:20:23 ID:nIkc8tTq0]
- だめだろ
- 84 名前:名称未設定 mailto:sage [2008/02/01(金) 21:27:30 ID:BFHK/vDAO]
- 初めは解った「気」になるのも大事だと思うがね
- 85 名前:名称未設定 mailto:sage [2008/02/01(金) 21:38:49 ID:2N2icJuR0]
- 最初は自分の納得出来る形で覚えるのがいいよ。
進んで行くうちに修正すればいい。 私の場合、ロールプレイングゲームのモンスターをイメージしてたし(笑 メンバ変数:名前や体力とかマジックポイント IBアクション:攻撃を受けたとか メソッド:体力を減らすとか0になったら死亡フラグが立つとか モンスターが10匹現れたら上記のインスタンスを10個立てて それぞれのインスタンスに攻撃すれば、それぞれで勝手に処理してくれる。 みたいな。
- 86 名前:名称未設定 mailto:sage [2008/02/01(金) 21:47:23 ID:lRnFBVym0]
- >>82
バイバイン乙 そして、仕事でVBを使うことになった俺orz
- 87 名前:名称未設定 [2008/02/01(金) 23:06:17 ID:BWMB+ueI0]
- 皆さんマジレスどうもです
たぶん自分の理解は外れてないけどものすごく浅いってことだろうと 解釈しました。分かった気にはなれませんでしたが、もうちょっと読みこなして リファレンスももっと見ていこうと思います
- 88 名前:71 [2008/02/01(金) 23:06:54 ID:BWMB+ueI0]
- なぜかIDが変わりましたが、>>71でした
- 89 名前:名称未設定 mailto:sage [2008/02/02(土) 00:01:21 ID:5pl+Uu5I0]
- プログラムは実践あるのみです
- 90 名前:名称未設定 mailto:sage [2008/02/02(土) 00:38:04 ID:NqyLEgiZ0]
- >>63
>>72 できました、ありがとうございます。 Leopardは直接フルスクリーンにできるんですね。 まだ、10.4なんです。 >>72のやり方だとウィンドウのステータスバーが残るんですね。 仕方ないのでウィンドウ内のビューサイズをウィンドウに合わせて回避しました。
- 91 名前:名称未設定 mailto:sage [2008/02/02(土) 00:57:40 ID:RXlTV5ga0]
- NSWindowにステータスバーなんてあったっけ?
まぁいずれにせよconstrainFrameRect:で返してるNSRectがウィンドウのrectになるってだけなので、 result.size.height+=(ステータスバーの高さ); result.origin.y-=(ステータスバーの高さ); とかしたらうまくいくんじゃないでしょうか
- 92 名前:名称未設定 mailto:sage [2008/02/02(土) 05:01:00 ID:J7XNENPv0]
- >>80
大間違いな解釈していると後で大変だよな。 あるケースで奈落の底に・・・
- 93 名前:名称未設定 mailto:sage [2008/02/02(土) 14:45:30 ID:Rc4l3OTe0]
- >>91
勘違いしてました。 ステータスバーと言うのはないですね。 単にウインドウ内部のビューが小さかっただけです。
- 94 名前:名称未設定 mailto:sage [2008/02/03(日) 08:08:17 ID:X+xH8J460]
- テーブルビューで、ヘッダーのところをクリックするとデータが
並べ替えられますが、クリックしても何も起きないようにするには どうすればいいでしょうか。
- 95 名前:名称未設定 mailto:sage [2008/02/03(日) 09:23:00 ID:USR4Jfgk0]
- >>67
レスサンクスdです。ID:JVdTTK6m0 です。 CUI版ですかぁ。あまり親しみがないんですよね。 cui版mplayerを時々使ってるくらいかな。 最初からGUI物に飛び込むのは無謀なんですかね。 今はC言語のサイトを見つけて読んでるところです。 >>74 わかりやすいですね。 ほかの方が「わかった気になってるだけ」とおっしゃっていましたが、 個人的に、最初にそこでたくさん出てくる横文字でつまずき、挫折するよりかは、 少しでもわかりやすい例えで理解して前に進んだ方がいいと思っています。 "なんとなく"でも把握していれば、やっていくうちに、もっとはっきりと どういったものなのか分かってくるかなと。初心者の自分がいうのもなんですがw プログラミングではなく、自分が習ってきたほかの物のことを考えるとそうなんで。 >>94 自分は、始めて1週間ちょっとくらいしか経っていないので 確かではないのですが、 TableViewを選択した状態で、インスペクターのAttributesを表示し、 「Allow: 」って所の「Column Ordering」っていうのからチェックを外したらどうなるでしょうか? 実際に使ったことがないのですが、名前からして、チェックがついてると「並び替えを許可」っぽい感じなんですが。
- 96 名前:名称未設定 mailto:sage [2008/02/03(日) 09:28:10 ID:USR4Jfgk0]
- >>94
>>95に書いたのは、 Interface Builderでの操作です。
- 97 名前:94 mailto:sage [2008/02/03(日) 09:40:07 ID:X+xH8J460]
- >>95, 96
私は IB3 を使ってるんですが、NSTableView の Attributes - Columns の "Reordering" のことでしょうか。 これは column の位置を変えられるようにするかどうか (1列目と2列目を入れ替える、など)のようです。
- 98 名前:名称未設定 mailto:sage [2008/02/03(日) 10:18:00 ID:USR4Jfgk0]
- >>97
名前は違いますが、Column Oderingと同じ機能っぽいですね。 確かにそうかもしれませんね、、すみませんm(_)m あとは、TableViewを一つのコラムを選択した状態で Attributesを選択。その時に表示される、Sort Key、Sort Selector、Sort Order っていうのは何か関係あるんですかね。 Sortというのは整頓という意味ですし、もしかしたら、、 と思ったので一応書いておきます。
- 99 名前:名称未設定 mailto:sage [2008/02/03(日) 10:57:49 ID:3kiF/6/w0]
- 自動でソートが効くってことはアレイコントローラを使っているんだと思うけど、
[arrayController setSortDescriptor:nil]; とかしてみればいいんじゃなかろうか
- 100 名前:94 mailto:sage [2008/02/03(日) 12:03:55 ID:X+xH8J460]
- >>99
おっしゃる通り、NSArrayController(と Core Data + Cocoa Bindings) を使っています。 で、sortDescriptor を NSArrayController に設定して使っているのですが、 テーブルのヘッダをクリックすると勝手に並べ替えられてしまって、 設定した sortDescriptorとは違う順序になってしまい困っています。
- 101 名前:名称未設定 mailto:sage [2008/02/03(日) 12:16:24 ID:87lsToCL0]
- クリックしたときに何も起きないようにしたいんじゃなくて、
自分で設定したsort descriptor を動作させたい、てこと?
- 102 名前:94 mailto:sage [2008/02/03(日) 12:26:16 ID:X+xH8J460]
- >>101
sortDescriptor は立ち上げ時に一度設定するだけなのですが、 それを変更できないようにしたい、ということです。
- 103 名前:101 mailto:sage [2008/02/03(日) 12:38:05 ID:oWNxC6th0]
- それだったら アレイコントローラにsort descriptor は設定しておかないで、立ち上げ時に
手動でアレイコントローラのコンテントをsortUsingDescriptorsをつかってソートすれば いいかな あるいは、NSTableHeaderView のmouseDown: を横取りしてマウスクリックを受け付けなくするとか もっとスマートな方法があるかもしれないけど
- 104 名前:名称未設定 mailto:sage [2008/02/03(日) 12:39:48 ID:UJklTjPo0]
- >>102
[tableView unbind@"sortDescriptors"]
- 105 名前:101 mailto:sage [2008/02/03(日) 12:44:59 ID:oWNxC6th0]
- 昇順←→降順の切替をユーザにさせたくなくて、常に昇順に保持しておきたい場合、降順ソートできないように
書き換えた sort descriptor サブクラス… - (id)reversedSortDescriptor が単に自分のコピーを返す… を作って置き換えるとか??
- 106 名前:名称未設定 mailto:sage [2008/02/03(日) 12:50:54 ID:9QAhjThz0]
- カラムのソートデスクリプタはIBで設定せず、
コードでプログラム起動時に一回だけ動くように記述する。 あと、ヘッダーカラムをクリックした時の記述があったはず。
- 107 名前:94 mailto:sage [2008/02/03(日) 14:08:07 ID:X+xH8J460]
- たくさんレスいただきありがとうございます。
>>102, 106 sortDescriptor そのものはバインディングはせず、コード内で立ち上げ時に 一度 arrayController にセットしています。 テーブルに表示される Core Data のデータの方だけ、バインディングしています。 >>103, 105 データそのものは追加されていくものなので、できれば sortDescriptor だけで 済ませたいのですが‥ arrayController の content を手動でセットする場合、立ち上げ時はいつ Core Data のデータのフェッチが終了するのかがよくわかりません。 データの順番は、表示されているデータそのものの昇順、降順ではなく、 表示には使っていない attribute をキーにしているのですが、ヘッダーセルを クリックすると、表示されているデータを昇順、降順に並べ替えてしまう ようです。 やはり mouseDown の上書きしかないでしょうか‥
- 108 名前:名称未設定 mailto:sage [2008/02/03(日) 14:46:43 ID:UJklTjPo0]
- >>107
104です。 tableColumnのvalueにbindすると自動的にtableViewのcontent,selectionIndexes, sortDescriptorsにarrayControllerのarrangedObjects, selecionIndexes, sortDescriptorsとbindされます。 だからcolumn headerをクリックしてソートするのを禁止するにはsortDescriptors のbindをストップすればよいのです。 Cocoa Bindings Examples and Hints のCocoa Bindings Examples and Hints のようにIBで設定しても良いです。 core dataの順序を記録する用途で当方でも使っていますので、同じ状況だと思いますが?
- 109 名前:94=107 mailto:sage [2008/02/03(日) 14:56:26 ID:X+xH8J460]
- >>104
ありがとうございます、できました! >>104 の unbnd を arrayController unbind: と勘違いし、 うまくいかないと思ってしまいました。すみません。 さらに欲を言うと、ヘッダをクリックしたときヘッダの色が 青になりますが、この色も変化させないようにすることは できるでしょうか?
- 110 名前:名称未設定 mailto:sage [2008/02/03(日) 15:23:42 ID:UJklTjPo0]
- >>109
104です 出先のWindows機からのアクセスなので、確認できませんが、 headerをクリックしても何もおこらないと思います。 念のため、IBで設定しても同じか実験してみてください。 Cocoa Bindings Examples and Hints homepage.mac.com/mmalc/CocoaExamples/controllers.html Disabling sorting in a tableview なれないWindows機からなのでtypoが多くてすいません
- 111 名前:名称未設定 mailto:sage [2008/02/03(日) 16:09:54 ID:u/Oq4gE50]
- QuickTimeムービーのプロパティでサウンドトラックの低音/高音の音量を個別に設定できますが
あれをQTMovieに対して設定する事は可能なんでしょうか?
- 112 名前:名称未設定 mailto:sage [2008/02/03(日) 16:49:05 ID:bYJaQCBN0]
- アトリビュートなんたらを洗えばあるんでないかい?
ADCのクラスリファレンスに一覧があるよ。
- 113 名前:名称未設定 mailto:sage [2008/02/03(日) 23:50:01 ID:xhvNdcsT0]
- あるビューにサブクラスを2つ以上実装したい場合はどうすればよろしいのでしょうか?
例えば、NSImageViewのパーツを置いてカスタムクラスにMyImageViewを設定するのですが、 もう一つMyImageView2もカスタムクラスにしたいのです。 よろしくおねがいします。
- 114 名前:名称未設定 mailto:sage [2008/02/03(日) 23:58:11 ID:DfOP/trw0]
- ええっと、オブジェクトというのは一つのクラスにしかなりえないから、
ひとつの ImageView をふたつのクラスにするのは無理だよ 単に @class MyImageView : NSImageView としてから、 @class MyImageView2 : MyImageView として、カスタムクラスを MyImageView2 にすれば? そうすると MyImageView2 からは MyImageView のメソッドも NSImageView のメソッドも使えるよ。
- 115 名前:名称未設定 mailto:sage [2008/02/04(月) 00:11:19 ID:LLRzPB740]
- 委譲させたら?
- 116 名前:名称未設定 mailto:sage [2008/02/04(月) 03:37:51 ID:Sa7MZiJY0]
- 質問なんですが、ボタンを押した時に特定のコントロールにキーのフォーカスを移動させたいんですが、どうやればいいんですか?
NSWindowにselectKeyViewFollowingViewみたいなのはあるんですが、渡すView自体を選択してくれるメソッドが見つかりません。
- 117 名前:名称未設定 mailto:sage [2008/02/04(月) 03:47:53 ID:JOVg4Jvf0]
- NSWindow の makeFirstResponder:
- 118 名前:名称未設定 mailto:sage [2008/02/04(月) 14:58:53 ID:Sa7MZiJY0]
- >>117
ありがとうございます。できました!
- 119 名前:名称未設定 mailto:sage [2008/02/05(火) 09:13:12 ID:b+MI5Uyi0]
- 数年ぶりにCocoaの世界に帰ってきた者です。当方の環境は
Mac OS X Tiger v10.4.11 Xcode 2.3 確かJaguarの時代だったと思いますが、私は次のコードを書きました。 ボタンを押すと、ユーザーディレクトリの中にあるTest.jpgのシンボリックリンクをTestAliasという名前で作るプログラムです。 確かこのときは、オリジナルのTest.jpgを移動したり、名前を変えたりすると、リンクが切れて、もやはTestAliasをダブルクリックしても、オリジナルが見つからず、開かれることはなくなったと記憶しています。 ところが、今日、久しぶりにこのプログラムを実行してみましたが、オリジナルを移動させても、名前を変えても、リンクが切れず、TestAliasをダブルクリックすることで、オリジナルを開くことができます。 また、Test.jpgをゴミ箱に入れて、TestAliasをダブルクリックした場合は、オリジナルがゴミ箱の中にあるので、開けないというメッセージが表示されるようになっていました。 これはシンボリックリンクがエイリアスと全く同じ仕様になったと理解していいのでしょうか。 それとも、シンボリックリンクの仕様は変わっていないけど、createSymbolicLinkAtPath: pathContent: メソッドが、シンボリックリンクではなく、エイリアスを生成するようになったのでしょうか。 また、このような変化があったのはMac OS Xのどのバージョンからなのでしょうか。 #import "MyObject.h" @implementation MyObject - (IBAction)myAction:(id)sender { NSString *str = @"~/"; NSFileManager *myFile = [ NSFileManager defaultManager]; [myFile changeCurrentDirectoryPath:[str stringByExpandingTildeInPath]]; if ([myFile createSymbolicLinkAtPath:@"TestAlias" pathContent:@"Test.jpg"]){ NSLog(@"YES"); }else{ NSLog(@"NO"); } } @end
- 120 名前:119 mailto:sage [2008/02/05(火) 09:57:32 ID:b+MI5Uyi0]
- 試しにターミナルで次のコマンドを実行しました。
ln -s Test.jpg TestAlias これはシンボリックリンクを作るはずですが、やはり、出来上がったTestAliasはエイリアスのように振る舞います。 Test.jpgを移動しても、名前を変えても追跡してくれるみたいです。 ということは、私の環境ではもはやシンボリックリンクという概念は存在せず、エイリアスだけに なってしまったのでしょうか。
- 121 名前:45 mailto:sage [2008/02/05(火) 10:33:27 ID:JH9guR+l0]
- なぜマニュアルを読まないのかさっぱり分からないが
HFS+ だと Alias も Symlink もサポートされる. UFS だと Symlink のみ.
- 122 名前:名称未設定 mailto:sage [2008/02/05(火) 11:39:40 ID:JsyJRBki0]
- cocoaアプリ側からそのシステムがcore image使用可能かどうかって、
どうやって知るのかな・・・。
- 123 名前:名称未設定 mailto:sage [2008/02/05(火) 12:32:13 ID:9FDDjTmb0]
- >>120
てもとで ln -s やってみたけど、 うちの 10.4.11, 10.5.1 ではそんなことにならないよ。 alias と symlink にはまだ区別があるみたいだけど。
- 124 名前:名称未設定 mailto:sage [2008/02/05(火) 12:33:38 ID:cij0dARY0]
- /tmp ディレクトリは起動時に空にされますが、ホームフォルダ以下で
ログイン時(または起動時)に自動的に空にされるディレクトリってないんでしょうか?
- 125 名前:名称未設定 mailto:sage [2008/02/05(火) 13:17:40 ID:HDjiUsh/0]
- >>124
CarbonのFindFolder()とか、CocoaのNSTemporaryDirectoryとかで userドメインのTemporaryフォルダは取得できる。 これで取ったフォルダの中身は再起動時に空になるけど、 ゴミ箱の中のRecoverd Filesに化けるな。
- 126 名前:119 mailto:sage [2008/02/05(火) 15:03:13 ID:b+MI5Uyi0]
- >>121
マニュアルってなんですか。 Xcodeヘルプから見れるReference Libraryのこと?
- 127 名前:名称未設定 mailto:sage [2008/02/05(火) 15:38:53 ID:Cj6Km0Em0]
- >>126
Finderが勝手にシンボリックにエイリアス情報を 追加書きしているように見えるけど。 ターミナルからopen TestAliasとやれば追跡できないし。
- 128 名前:名称未設定 mailto:sage [2008/02/05(火) 21:47:04 ID:xbftVDuZ0]
- 書類をアプリにドラッグして開けるようにするには
ターゲット>プロパティ>書類のタイプ で指定するわけですが、 フォルダだけを開きたい場合はどうすれば良いんでしょうか? 拡張子に*を指定するとフォルダも含め何でも開けてしまうんですが、 フォルダ「だけ」、の場合は何を指定するんでしょう?
- 129 名前:名称未設定 mailto:sage [2008/02/05(火) 21:59:10 ID:rdVERx6H0]
- 質問です。
カーソルのイメージをQuickDrawの関数を使って取得してるんですが、 虹色カーソル(spinning wait cursor)が表示されているのに標準の矢印カーソルのイメージを 取得してしまいます。 虹色カーソルが表示中って分かるイベントフラグみたいのってあるのでしょうか。 欲を言えば、虹色カーソルが取得出来ればベストなんですけど(この場合はアニメーションなくて1フレーム目の画像のみでも・・)
- 130 名前:名称未設定 mailto:sage [2008/02/05(火) 22:03:41 ID:BmVs9NNX0]
- >>128
OSTypeを'fold'にする。拡張子とかは空欄でいいんじゃないか。 UTIも空で動くけど、"public.folder"を指定するのが正しいと思う。
- 131 名前:名称未設定 mailto:sage [2008/02/05(火) 22:12:52 ID:g5I0ovRl0]
- Core DataはIBを使わないで使うと、結構良いフレームワークだという事に気づいた
その後IBを使ったCore Dataは快適になった つうことでみなさん、コードでゴリゴリ書いた方が理解が早いかも
- 132 名前:名称未設定 mailto:sage [2008/02/05(火) 22:14:17 ID:BmVs9NNX0]
- ついでに>>129
CGSGetGlobalCursorData()なら取れるかもしれないけど、 プライベートフレームワークだから無保証。 関数名でぐぐるとちょっと情報みつかるよ。
- 133 名前:124 mailto:sage [2008/02/05(火) 22:32:09 ID:iWlRhzBT0]
- >>125
ありがとうございました。 試した結果を書くと、私の環境(PPC 10.4.11)では以下でした。 ・NSTemporaryDirectory → /private/var/tmp/folders.501/TemporaryItems ・FSFindFolder の kUserDomain kTemporaryFolderType → ~/Library/Caches/TemporaryItems kUserSpecificTmpFolderType → ~/Library/Caches kTemporaryItemsInCacheDataFolderType → ~/Library/Caches/TemporaryItems kMagicTemporaryItemsFolderType → fnfErr kTemporaryItemsInUserDomainFolderType → fnfErr kCachedDataFolderType → ~/Library/Caches
- 134 名前:名称未設定 mailto:sage [2008/02/05(火) 22:41:17 ID:rdVERx6H0]
- >>132
情報ありがとうございます。 CGSGetGlobalCursorDataの方が一度にたくさん情報取れるのでいいですね。 でも、虹色カーソルのとき標準矢印カーソルとなってしまいます・・・。 やっぱり何かイベントが発生していると思うんだけどなぁ。 CarbonEventのコントロール系はイベント返ってこないし、打つ手なしかな??
- 135 名前:名称未設定 mailto:sage [2008/02/05(火) 22:56:06 ID:xbftVDuZ0]
- >>130
ありがとうございます あとで試してみます
- 136 名前:名称未設定 mailto:sage [2008/02/07(木) 18:51:37 ID:i1sXHLe20]
- NSSlider *slideVolumeと定義して
float volume = [slideVolume floatValue]; NSLog(@"volume=%f", slideVolume); とやったらvolumeの値がめちゃくちゃだった。 30分ハマって、slideVolume->slideVolに変更したら直った。 こんなのあり?? 10.4.11 Xcode2.5
- 137 名前:名称未設定 mailto:sage [2008/02/07(木) 19:01:56 ID:P0z8W2nh0]
- >>136
何処から突っ込めばいいの?
- 138 名前:名称未設定 mailto:sage [2008/02/07(木) 19:08:50 ID://LqtxVA0]
- >>136
NSLog(@"volume=%f", slideVolume); にしてたらlogに吐かれるのはvolumeの値なんかじゃないから こんなのあり?っていうかそうにしかならない
- 139 名前:名称未設定 mailto:sage [2008/02/07(木) 19:27:02 ID:Dc7nZeu50]
- >>136
slideVolでなぜ直るのかかなり疑問
- 140 名前:名称未設定 mailto:sage [2008/02/07(木) 21:18:51 ID:ipiWvlAk0]
- >>137
すんません。 NSLogの引数はslideVolumeじゃなくてvolumeでした。 しかし本当に不思議なんですよ。 クリーンとかかけたり再起動したりしてもおかしいまま。
- 141 名前:名称未設定 mailto:sage [2008/02/07(木) 23:27:30 ID:H1Xb5CsL0]
- >>140
NSSliderオブジェクトを生成もしくは取得してない、なんてオチではないだろうな?
- 142 名前:45 mailto:sage [2008/02/07(木) 23:50:02 ID:vbFRyn0Y0]
- >>141
あーありそう.ありそう. ポインタ宣言したら実体まで確保されてるとか思うんだよね. 初心者って
- 143 名前:名称未設定 mailto:sage [2008/02/08(金) 00:11:35 ID:Bz1m/8mJ0]
- float volume = [slideVolume floatValue];
の返り値は正しかったのか? >>141 slideVolumeがnilだったらvolumeは常に0になると思うけど
- 144 名前:名称未設定 mailto:sage [2008/02/08(金) 01:16:59 ID:iietHHAy0]
- >>143
>slideVolumeがnilだったらvolumeは常に0になると思うけど Mac OS X 10.5 以降限定だよ。 developer.apple.com/jp/documentation/Cocoa/Conceptual/ObjectiveC/Articles/chapter_2_section_3.html それ以前のは PPCなら返値の型がfloat, double, struct, long long, long double なら不定。 intelも同様だったきがするが良く覚えてない。 なんかドキュメントが原文と日本語版でグチャグチャだったのを覚えてる。 # 以前のドキュメント参照って書いておきながら以前のドキュメントが見つからないのは気のせい。
- 145 名前:名称未設定 mailto:sage [2008/02/08(金) 01:19:12 ID:XxzPVdKP0]
-
Intel Mac では、message to nil で float その他が返ると 0 だけど、 ppc Mac では未定義。 developer.apple.com/documentation/MacOSX/Conceptual/universal_binary/universal_binary_tips/chapter_5_section_22.html 参照。 それは別として、 slideVol というメンバがあるのが理解できない
- 146 名前:名称未設定 mailto:sage [2008/02/08(金) 01:30:40 ID:iietHHAy0]
- おお、これだ、これ。
IntelだとOKでPPCだとNGだったか。 まあ、俺は怖くて使わ(え)ないけど。
- 147 名前:名称未設定 mailto:sage [2008/02/08(金) 04:22:13 ID:tCo++TR90]
- >>143
NSSlider *slideVolume = nil; としたとは書いてないから、ポインタ値がめちゃくちゃな値になってる可能性もあるんじゃない? でも、それならメッセージ送ったときに落ちるか。該当部分のコード全部晒してくれないとわからんな。
- 148 名前:名称未設定 mailto:sage [2008/02/08(金) 07:42:39 ID:Ra3ZPNDQ0]
- 親クラスで volume インスタンス変数が定義されているとか。
- 149 名前:名称未設定 mailto:sage [2008/02/08(金) 08:00:34 ID:dfpba1su0]
- ローカル変数のスコープが優先されるだろ。
- 150 名前:名称未設定 mailto:sage [2008/02/08(金) 14:18:53 ID:mOfTgsF60]
- オカルト方面の議論に似ておる
- 151 名前:名称未設定 mailto:sage [2008/02/09(土) 16:16:50 ID:m0UtGMte0]
- すみません、教えて下さい。
QTMovieView内のQTMovieをフリップ、回転させたいのですが どうすればいいのかわかりません。 サブクラスのdrawRectでNSAffineTransformを使うような気がするのですが、 具体的にどう書けばいいのかさっぱりです。 よろしくおねがいします。
- 152 名前:名称未設定 mailto:sage [2008/02/09(土) 16:44:37 ID:XwOffBYp0]
- View自体を回せばいいんじゃないの?
- 153 名前:名称未設定 [2008/02/09(土) 16:46:43 ID:S/WQlHWE0]
- QuickTimeにNSAffineTransformってきくのかな?
ここは、CoreAnimationのQTMovieLayerを使うのが楽だと思います。
- 154 名前:名称未設定 mailto:sage [2008/02/09(土) 16:52:15 ID:SPsXuN9d0]
- QTMovie自体のMatrixを書き換えるってのはなしか。
- 155 名前:名称未設定 mailto:sage [2008/02/09(土) 17:20:57 ID:5COFL2820]
- View 自体をaffin transform で回すことについて…不確かな記憶だけど、Tiger では拡大縮小は効くが、回転はできない
Leopard では回転も拡大縮小も効かない と思った。
- 156 名前:名称未設定 mailto:sage [2008/02/09(土) 18:14:54 ID:XwOffBYp0]
- ボタンとか回転できた記憶があるけど。
- 157 名前:名称未設定 mailto:sage [2008/02/09(土) 22:58:18 ID:m0UtGMte0]
- みなさん、ご意見ありがとうございます。
いろいろ漁ってみたのですが、QTMovieView(NSView)自体の回転は敷居が高そうですね。 拡大、縮小はsizeの変更でうまくいったのですが。 >>152 View自体を回す方法もいろいろ試しているのですが、枠が回転したりなかなかうまくいきません。 >>153 まだ10.4なんです。CoreAnimationならここら辺が簡単なんですよねえ。 >>154 QTMovieのMatrixを書き換えるという方法があるのでしょうか?
- 158 名前:名称未設定 mailto:sage [2008/02/09(土) 22:59:33 ID:JLKpZqHO0]
- >>157
QuartzComposerを使うのはダメ?
- 159 名前:名称未設定 mailto:sage [2008/02/09(土) 23:12:54 ID:XwOffBYp0]
- NSBoxに入れてQTMovieViewを回転させたらいいんじゃないかな。
- 160 名前:名称未設定 mailto:sage [2008/02/09(土) 23:43:51 ID:J/8Qd+ts0]
- OpenGL textureにして回すとか
developer.apple.com/samplecode/QTQuartzPlayer/index.html ぐりぐり回るよ;-)
- 161 名前:名称未設定 mailto:sage [2008/02/10(日) 18:07:31 ID:uw0MifcW0]
- Objective-C 2.0 の property って、コードの量が減る以外に
何かメリットありますか?(例えばパフォーマンスとか) 既存のコードを property で書き換えるか悩み中‥
- 162 名前:名称未設定 mailto:sage [2008/02/10(日) 20:09:37 ID:MQiiMPM60]
- たしかパフォーマンスは落ちるかと
- 163 名前:名称未設定 mailto:sage [2008/02/10(日) 22:44:37 ID:Fr8iJ/eI0]
- コンパイラでインライン化とかしてくれないの?
- 164 名前:名称未設定 mailto:sage [2008/02/10(日) 23:28:22 ID:mNbPLIG00]
- >>162
そうなの?アクセサメソッドのコードを生成してくれるんじゃ ないの。速度は変わらないと思ってたけど。
- 165 名前:名称未設定 mailto:sage [2008/02/11(月) 00:04:13 ID:rw6fzeGL0]
- いずれにせよ、既存のアクセッサをわざわざ書き換える必要は無いという事でFA?
- 166 名前:名称未設定 [2008/02/11(月) 00:14:36 ID:Mw0lyuru0]
- @property id value;
とか書かなくても、obj.valueなどのようなプロパティー構文は使えるよ。 ただ、Xcodeが入力を補完してくれないだけで。
- 167 名前:名称未設定 mailto:sage [2008/02/11(月) 00:32:16 ID:WABBHTZZ0]
- でも、Obj-C 1.xのころは、アクセッサはスレッドセーフでも同値
チェックありでもなかったじゃない? Obj-C 2.0はGC導入に伴い、いろいろ余計なことするようになった 分遅くなったと思うんだけど。 Obj-C 2で速度出すなら、アクセッサはきちんと書くか、少なくとも 属性書き足さないといけないのでは?
- 168 名前:名称未設定 mailto:sage [2008/02/11(月) 02:32:07 ID:DHyabWpb0]
- 誰かきちんと書いて速度比較してないのかな。
- 169 名前:名称未設定 mailto:sage [2008/02/11(月) 09:51:52 ID:qHxPQa8p0]
- 実際のところアプリの内容によって違う
俺のメインのプロジェクトのは書き換えたら遅くなったから使うのやめたよ
- 170 名前:名称未設定 mailto:sage [2008/02/11(月) 09:52:35 ID:qHxPQa8p0]
- でも特殊なことしてない限り大丈夫だと思います
- 171 名前:名称未設定 mailto:sage [2008/02/11(月) 13:01:17 ID:bv2jVL8f0]
- UI の NSTextField に NSNumberFormatter を設定して、
AppController 内の NSNumber のメンバにバインディングさせているのですが、 その NSTextField に一旦数字を入力し、その後それを削除してリターンを押すと、 どこからともなく「フォーマットエラー(変更内容を破棄)(OK)」というパネルが 現れ、NSTextField をブランクのままにすることが拒絶されます。 このとき、このパネルを表示させずに、NSTextField はブランクのまま、単純に NSNumber に nil を設定するには、どうすれば良いでしょうか。
- 172 名前:名称未設定 mailto:sage [2008/02/11(月) 15:34:22 ID:nf9aGNMi0]
- ヌル時の動作がバインディングのインスペクターで設定出来たような。
か、やはり空白時はヌルで更新するコードをかますか。
- 173 名前:名称未設定 mailto:sage [2008/02/12(火) 04:19:53 ID:IXJXTrlG0]
- TigerでSafariStandの「メタルを除去」みたいなアピアランスって
どうすればできるんでしょうか
- 174 名前:名称未設定 mailto:sage [2008/02/12(火) 04:29:29 ID:NDM2BdXw0]
- >>173
setBackgroundColor:
- 175 名前:名称未設定 mailto:sage [2008/02/12(火) 16:17:32 ID:YacaCMuF0]
- UIKitにNSBrowserみたいな階層表示できるviewはつきますかね?
- 176 名前:名称未設定 mailto:sage [2008/02/12(火) 16:30:21 ID:YacaCMuF0]
- 誤爆スマソ
- 177 名前:名称未設定 mailto:sage [2008/02/12(火) 18:52:09 ID:41YUEpKu0]
- 秒をhh:mm:ssに変換するのって自力で書くしかないですかね。
- 178 名前:名称未設定 mailto:sage [2008/02/12(火) 22:04:34 ID:n90Q8BNy0]
- [NSString stringWithFormat:@"%02d:%02d:%02d",(s / 3600),((s / 60) % 60),(s % 60)];
s は int として、こんな感じか?
- 179 名前:名称未設定 mailto:sage [2008/02/12(火) 22:20:36 ID:OwQ15KHvO]
- それを自力で書くと言うんでは。
Formatterとか使いたいんじゃないの、何となくだけど。
- 180 名前:名称未設定 [2008/02/12(火) 23:25:27 ID:nMEwufKb0]
- >>161
Objective-C2.0のプロパティーのパフォーマンスについて調べてみました。 まず、 obj,value = @"hello"; a = obj.value; は、単純に [obj setValue:@"hello"]; a = [obj value]; に変換されるだけで、パフォーマンス的な問題は発生しません。 次に、@synthesizeが生成するアクセッサのコードは、@propertyの属性が、 assignのものはパフォーマンス的に全く影響のないコードが生成されます。ただし、GC前提ということになりますが。 copyとretainは、基本的にスレッドセーフなコードが生成されます。つまり、内部でspin_lockの処理が行われます。それ以外は、特にパフォーマンスに影響する部分はなさそうです。
- 181 名前:名称未設定 mailto:sage [2008/02/12(火) 23:34:01 ID:SpY+Nhzt0]
- >>177
[NSDate descriptionWithCalendarFormat〜] なんかそうじゃないかな ちらっとリファレンス探ってみただけで試したりしてないけど dateコマンドと同じ様なのがBSDレベルでもありそうな気がするけど
- 182 名前:名称未設定 mailto:sage [2008/02/13(水) 00:36:31 ID:hLcBAx030]
- >>177
俺以前NSCalendarDateでやったけど、NSDateと使いやすい方でやればいいと思う。 「Dates and Times Programming Topics for Cocoa」ってそのまんまの ドキュメントがあるよ。
|

|