【Xcode7】Swift2でMacアプリ開発。画像を読み込む為のボタンを作る。

公開 : → 更新 :

犬も歩けば棒にあたる。だからRは歩かない。@It_is_Rです。

最近はSwiftの記事が多いと思っている人もいるのでは無いでしょうか。実はRは現在、Swiftを使ってゲーム開発のお助けアプリを作ろうかなと思っています。
二つほどゲームを同時開発中なのですが、ゲームを作っていて悩むところが結構あるのです。まず、登場キャラが多いと、その設定の管理が大変ということです。

そこで、キャラ設定に役立つ、キャラクター管理ソフトを今回から順番に作っていこうと思います。
完成すればキャラ設定がやりやすくなること間違いなしだね。

では、Xcode7を開き、新規プロジェクトを作り、Cocoa Applicationを選んでください。Project Nameは「CharApp」。言語はもちろんSwiftとしました。
Storyboardは使おうと思うので、Use Storyboardにチェックを入れておきましょう。

画像を読み込むプログラム

それでは、画像を読み込むプログラムを作っていきたいと思います。

それぞれのパーツを配置する

まず、それぞれのパーツを配置してしまいましょう。
まずは「Push Button」をドラッグして、ビューに表示させます。
Xcode35

次に、「Image View」をドラッグします。
Xcode36

Image Viewの大きさを調節します。
Xcode37

パーツをソースに繋ぐ

では、「controlキー」を押しながら、ViewControllerクラスの一番上に「Image View」をドラッグします。
Nameは「screenImg」にしました。
Xcode38

同じ様に、「controlキー」を押しながら、ViewControllerクラスの一番上に「Button」をドラッグします。
Connectionは「Action」に変更します。Nameは「openImg」にしました。
Xcode39

プログラムを書く

では、たった今作った、openImgメソッドの中に、次のプログラムを書いていきます。

let file: NSOpenPanel = NSOpenPanel()
file.allowsMultipleSelection = false    //ファイルを複数選択できるかどうか
file.canChooseFiles = true              //ファイルを選択できるかどうか
file.canCreateDirectories = true        //新しいフォルダを作れるかどうか
file.runModal()                         //ファイルを開く為のパネル表示
       
let openfile = file.URL
if(openfile != nil) {
    screenImg.image = NSImage(contentsOfURL: openfile!)
}

実行する

最後に、実行してみましょう。
Xcode40

Buttonをクリックします。
すると、自分のMacに入っている画像を読み込むパネルが表示されました。何か画像を開きます。
Xcode41

この様に、ウィンドウに自分のMac内の画像を開くことができました。
Xcode42

スポンサードリンク

コメントをどうぞ!

メールアドレスが公開されることはありません。




オススメ記事

Android アプリ開発入門! Android Studio のインストール手順。

人の笑顔が大嫌い。 @It_is_R です。 Android アプリ開発では、 Eclipse や Android Studio を使ってアプリを開発するのが一般的です。 一般的に言語は Ja

bootstrap3

Bootstrap3でサイトのレイアウト。グリッドシステムの使い方と裏技。

開発中のゲームはサイト制作に入っております。@It_is_Rです。 前回に引き続き、Bootstrap3の記事です。 サイトを作るとき、CSSなどを使ってサイトのレイアウトを調節したりしますが

【Android Studio】TextView 文字の色やサイズ、書体を変更する方法。

サイズは大きいほど、押しがいがあります。@It_is_Rです。 スマホのボタンの話ですよ。何を考えてたんですか? Androidアプリ開発、8回目となりました。 今回はこれまでに学習した T

FC2 blog customize

FC2ブログ ”最強” カスタマイズ入門講座。文字の大きさを設定する。

こんにちわ。美しいものほど濁って見える@It_is_Rです。 今回もFC2ブログの"最強"カスタマイズを始めていこうと思います。 今回は文字の大きさや色など、ブログ内の文字の設定をしていきます

宇宙一分かりやすい JavaScript のかなり詳しい基本の解説。

宇宙一分かりやすい JavaScript のかなり詳しい基本の解説。

普段から猫に遊ばれている@It_is_Rです。 今回は JavaScript について、初心者の人にも分かりやすく、丁寧に解説していきます。 JavaScript と EcmaSc

ショートコード

BEMによるCSS設計の方法を解説。命名規則から使い方まで。

完璧を求めすぎて、平均以下な@It_is_Rです。 CSSは比較的簡単なものですが、CSS設計をしっかりしておかなければ、余分なコードが多くなったり、後から修正が大変になったりしてこまることにな

FC2 blog customize

FC2ブログ ”最強” カスタマイズ入門講座。背景を変更する。

三度の飯よりも好きなものが多すぎて比較にならない@It_is_Rです。 FC2ブログ"最強"カスタマイズ入門講座の続きですね。最強にカスタマイズしていきましょう。 今回は背景色の変更をメインに

bootstrap3

Bootstrap3でサイト制作するための、準備と初期設定。

ゲーム制作は順調にすすんでいます。このまま順調にいけば、今月か来月までには完成できそうです。@It_is_Rです。 さて、今回はBootstrap3によるサイト制作の入門講座です。 このBoo

enchant.jsのロード画面を、好きな画像に変更する方法。

今日は爆睡していました。@It_is_Rです。 enchant.jsのロード画面はカッコわるいなとずっと思っていました。「あ、これenchant.jsで作ったんだな」って思われてしまうじゃないで

java

Javaのクラスとメソッドの違いとは?ゲーム風に解説。

この頃小説を読んでいなく、何か読みたいなと思っている@It_is_Rです。 Javaを勉強し始めたばかりの人は、何やら難しい単語に混乱する人も多いでしょう。その中で、クラスとメソッドって一体何が