macOS/iOS API解説

iOS , Mac アプリケーション開発のために使われる主要フレームワークの日本語情報です。2010年代に書かれた内容です。今後更新はありません。

目次

delegate

INDEX>AppKit>NSWindow

ウインドウのデリゲート

Objective-C

@property(assign) id<NSWindowDelegate> delegate

Swift

unowned(unsafe) var delegate: NSWindowDelegate?

解説

ウインドウのデリゲート。
なければnilを返します。

設定値

Objective-C

id<NSWindowDelegate>

Swift

NSWindowDelegate?

ウインドウのデリゲート、デリゲートオブジェクトはNSWindowDelegateプロトコルに準拠することが必要です。
下記のような表記になります。

class AppDelegate: NSObject,NSWindowDelegate {}

このクラスが、NSApplicationDelegateにもNSWindowDelegateにも準拠する場合は下記のような表記になります。

class AppDelegate: NSObject, NSApplicationDelegate,NSWindowDelegate {

フレームワーク

ApplicationKit

クラス

NSWindow

使用可能

10.0

関連記事(外部リンク)

参照

setDelegate

例文

Objective-C

 [info setStringValue:[[myWindow delegate] className]];

Swift

    //NSWindow delegate
    @IBAction func function018(sender: AnyObject) {
        var aWindow : NSWindow
        = NSWindow(contentRect: NSMakeRect(0.0, 0.0, 300.0, 200.0),
            styleMask: NSTitledWindowMask
                | NSClosableWindowMask
                | NSMiniaturizableWindowMask
                | NSResizableWindowMask
                | NSTexturedBackgroundWindowMask,
            backing: .Buffered,
            defer: false,
            screen: NSScreen.mainScreen())
        windowArray.addObject(aWindow) //ウインドウを保持するための配列に追加。アプリ終了時に配列は破棄
        aWindow.delegate = self
        aWindow.center()//ウインドウをスクリーンの中心に
        aWindow.title = "ウインドウタイトル"//タイトル設定
        aWindow.orderFront(self)//前面に
        aWindow.makeKeyAndOrderFront(self)//表示
    }

編集時のバージョン

10.10