macOS/iOS API解説

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

目次

frame

INDEX>AppKit>NSScreen

スクリーン全体のフレームを返します

Objective-C

@property(readonly) NSRect frame

Swift

var frame: NSRect { get }

解説

スクリーン全体のフレームを返します。

返り値

スクリーン全体のフレーム
Objective-C

NSRect frame

Swift

NSRect { get }

引数

フレームワーク

ApplicationKit

クラス

NSScreen

使用可能

10.0

参照

更新時のバージョン

OS X 10.14.5
Seift4.0

関連記事(外部サイト)

例文

NSRect sRect = [[NSScreen mainScreen] frame];

NSLog([NSString stringWithFormat:@"mainscreen size = x:%.1f,y:%.1f,width:%.1f,height:%.1f",sRect.origin.x,sRect.origin.y,sRect.size.width,sRect.size.height]);

}


Swift4.0

    //NSScreen deepest
    //NSScreen frame
    //NSScreen visibleFrame
    @IBAction func function003(_ sender: Any) {
        let mainScreen : NSScreen = NSScreen.deepest!
        print("frame = ",mainScreen.frame)
        print("visible frame = ",mainScreen.visibleFrame)
    }

Swift

    //NSWindow mainScreen()
    //NSWindow deepestScreen()
    //NSWindow screens()
    @IBAction func function001(sender: AnyObject) {
        let theScreen : NSScreen = NSScreen.mainScreen()!
        NSLog("main screen size=  (%.2f✕%.2f)",
                                    Float(theScreen.frame.size.width),
                                    Float(theScreen.frame.size.height) )
        //-> main screen size=  (1366.00✕768.00)
        
        let deepestScreen : NSScreen = NSScreen.deepestScreen()!
        NSLog("deepestScreen screen depth= %d", NSBitsPerPixelFromDepth(deepestScreen.depth) )
        //-> deepestScreen screen depth= 24
        
        let screenArray : [AnyObject] = NSScreen.screens()!
        for value in screenArray {
            NSLog("screen size=  (%.2f✕%.2f)",
                Float(value.frame.size.width),
                Float(value.frame.size.height) )
        }
        //-> screen size=  (1366.00✕768.00)
        //-> screen size=  (1920.00✕1080.00)

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