state
引き出しの状態を返します
@property(readonly) NSInteger statevar state: Int { get }
解説
引き出しの状態を返します。
【NSDrawerState】引き出しの状態
● NSDrawerClosedState 閉じている途中
● NSDrawerOpeningState 開き終わった
● NSDrawerOpenState 開いている途中
● NSDrawerClosingState 閉じ終わった
設定値
@property(readonly) NSInteger statevar state: Int { get }
フレームワーク
ApplicationKit
クラス
NSDrawer
使用可能
10.0
更新時のバージョン
OS X 10.10.2
関連記事(外部サイト)
例文
#import "MyObject.h" @implementation MyObject - (IBAction)myAction1:(id)sender { [drawer open:nil]; NSLog([self drawerStateString:[drawer state]]); } - (IBAction)myAction2:(id)sender { [drawer close:nil]; NSLog([self drawerStateString:[drawer state]]); } -(NSString *)drawerStateString:(int)state { NSString *retString; switch (state){ case NSDrawerClosedState: retString = @"NSDrawerClosedState"; break; case NSDrawerOpeningState: retString = @"NSDrawerOpeningState"; break; case NSDrawerOpenState: retString = @"NSDrawerOpenState"; break; case NSDrawerClosingState: retString = @"NSDrawerClosingState"; break; }; return retString; } @end
//NSDrawer state var theDrawer005 : NSDrawer = NSDrawer(contentSize: NSMakeSize(100.0, 100.0), preferredEdge: 1 ) //preferredEdge 0=左、1=下、2=右、3=上 func buttonAction005(sender: AnyObject){ var theWindow : NSWindow = (sender as NSButton).window! if ((theWindow.drawers) != nil){ NSLog("%@", theWindow.drawers!.description) } //drawerを表示/非表示 theDrawer005.toggle(theWindow) } func checkTimer005(timer:NSTimer!) { switch (theDrawer005.state){ case 0: //NSDrawerState.ClosedState: NSLog("閉じている") case 1: //NSDrawerState.OpeningState: NSLog("開いている途中") case 2: //NSDrawerState.OpenState: NSLog("開いている") case 3: //NSDrawerState.ClosingState: NSLog("閉じている途中") default: NSLog("閉じている") } } @IBAction func function005(sender: AnyObject) { var aWindow : NSWindow = NSWindow(contentRect: NSMakeRect(0.0, 0.0, 300, 200), styleMask: NSTitledWindowMask | NSClosableWindowMask | NSMiniaturizableWindowMask | NSResizableWindowMask, backing: .Buffered, defer: false) windowArray.addObject(aWindow) //ウインドウを保持するための配列に追加。アプリ終了時に配列は破棄 //ボタンを作成 var theButton : NSButton = NSButton(frame: NSMakeRect(100.0, 2.0, 100.0, 30.0)) theButton.title = "Toggle" theButton.bezelStyle = NSBezelStyle.RoundedBezelStyle theButton.action = Selector("buttonAction005:") theButton.target = self aWindow.contentView.addSubview(theButton) let delegateObj : DrawerDelegate = DrawerDelegate() delegateObjects.addObject(delegateObj) theDrawer005.delegate = delegateObj NSLog("delegate = %@",delegateObj) //テキストフィールドを作成、引き出しに付ける var textField : NSTextField = NSTextField(frame: NSMakeRect(10.0, 10.0, 50.0, 30.0)) theDrawer001.contentView?.addSubview(textField) //引き出しのウインドウを設定 theDrawer005.parentWindow = aWindow var timer = NSTimer.scheduledTimerWithTimeInterval(0.2, target: self, selector: Selector("checkTimer005:"), userInfo: nil, repeats: true) //ウインドウの表示 aWindow.center()//ウインドウをスクリーンの中心に aWindow.title = "ウインドウタイトル"//タイトル設定 aWindow.orderFront(self)//前面に aWindow.makeKeyAndOrderFront(self)//表示 }