Cocoaはさっぱり!!! version.8at MACCocoaはさっぱり!!! version.8 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト150:149 07/07/09 06:57:44 MKmnIjZg0 NSResponderを継承しているviewたちをウィンドウに配置してキーを押せば performKeyEquivalentに入って来ます。上書きしてNSLogで確かめてみました。 しかしNSButtonにaddSubviewしたviewだと反応しないです。 acceptFirstResponderをYESで上書きしたりmakeFirstResponderを試しましたがダメでした。 けどなぜかNSSliderにaddSubviewした場合は反応しました。 まだ謎が解けません、、、お力添えをお願いします。 151:名称未設定 07/07/09 12:24:49 MtZ2kM7T0 NSButton が performKeyEquivalent を拾っているから、subview にはいかないということではなくて? 152:149 07/07/09 15:51:27 6JIdbr8F0 キーを押すと警告音がなるのでNSButtonはperformKeyEquivalentを拾っていないようです。 ためしにボタンのサブクラスでperformKeyEquivalentをreturn NOで上書きしてみましたが、 ボタン上のviewに処理が回ってこないという状態です。 153:名称未設定 07/07/09 17:37:28 uzTm6K720 >>152 試してみたけどsubviewのperformKeyEquivalentは呼ばれないみたいね。 対症療法だけどNSButtonのサブクラスを作ってperformKeyEquivalentを書くのはどう? @implementation MyButton - (BOOL)performKeyEquivalent:(NSEvent *)anEvent { NSEnumerator* enumerator = [[self subviews] objectEnumerator]; id subview; BOOL result = NO; while ( ( subview = [enumerator nextObject] ) && !result ) result = [subview performKeyEquivalent:anEvent]; if ( !result ) result = [super performKeyEquivalent:anEvent]; return result; } @end 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch