2016-06-26 5 views
-2

私は、次のコードでそれを試してみました:私は、コンパイルを持っていないし、時間エラーを実行し、NSImageでは、正しく画像をロードしているようだSwift:プログラムを使って画像をウィンドウに読み込む方法は?

@IBOutlet weak var window: NSWindow!! //I don't understand this line 

    let imageView = NSImageView() 
    imageView.image = NSImage(byReferencingURL: IMAGE) 
    window.contentView?.addSubview(imageView) 

。 - でも、不幸にも、それは私の窓には現れません。

編集: 設定するフレームプロパティハット。コードに続いて、ウィンドウ内の画像を中心に:

let imageView = NSImageView() 
let image = NSImage(byReferencingURL: IMAGE_URL) 
imageView.image = image 
imageView.frame = self.window.contentView!.bounds 
imageView.autoresizingMask = [.ViewWidthSizable, .ViewHeightSizable]         
self.window.contentView?.addSubview(imageView) 

答えて

0

プログラムであなたがNSImageViewオブジェクトを使用して画像プロパティを設定したいと思うでしょう、あなたのウィンドウに画像ビューを追加します。以下では、ウィンドウのView Controllerに配置できる単純な関数を作成しました。さらに、他のNSImageViewプロパティ(たとえばframe)を設定して、望ましい結果を達成する必要があります。

func loadImageView() { 
    /* Create an image view */ 
    let imageView = NSImageView() 
    /* Set image property and replace name with your image file's name */ 
    imageView.image = NSImage(named: "YOUR_IMAGE_FILE_NAME_HERE") 

    /* Add the new imageView to the main view */ 
    self.view.addSubview(imageView) 
} 
+0

ありがとうございました。私は最後の行を次のように変更しました: 'window.view.addSubview(imageView)'エラー:「値の型」(NSView、stringForToolTip:NSToolTipTag、ポイント:NSPoint、userData:UnsafeMutablePointer )メンバー 'addSubview'はありません。 "windowは次のとおりです:' @IBOutlet weak var window:NSWindow! ' – PjotrC

+0

@Pjotr​​Cどのクラスでこの関数を実装していますか?メインのViewControllerサブクラスにある場合は、 'window'プロパティを通してビューにアクセスすべきではありません。 –

+0

私はXcodeによって自動的に生成される_AppDelegate_クラスで作業しています。 _view_の代わりに_contentView_を使用する必要があるようです(更新された質問をご覧ください)。私はどのプロパティに値を設定する必要はありません... – PjotrC

関連する問題