1. HOME
  2. »
  3. プログラミング・Web
  4. »
  5. Swift
  6. »
  7. 【Xcode7】Swift2でMacアプリ開発。画像を読み込む為のボタンを作る。

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

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

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

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

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

目次
  1. 画像を読み込むプログラム

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

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

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

まず、それぞれのパーツを配置してしまいましょう。
まずは「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

スポンサードリンク

関連コンテンツ

オススメ記事

java

Javaでじゃんけんゲームを作ろう。サンプルコードあり!

※追記(2018/8/29) より分かりやすい記事になるよう修正しました。 今回はJavaを使って、じゃんけんゲームを作る方法を紹介します。 eclipseがインストールされており、Java

JavaScriptマンガ講座。初心者でも痛いほど理解できる変数の使い方。(実践編)

押入れが部屋になっている@It_is_Rです。 今回の記事はJavaScriptマンガ講座、2回目となりました。 この企画はJavaScriptをフザケまくって覚えようというものです。

【Android Studio】エミュレータを起動してプログラムを実行する方法!

何をやっても長続きしない@It_is_Rです。 このままでは人生さえも長続きしないかも知れない。 さて、しばらくぶりになってしまいましたが、今回は Android Studio 2.3.2 を

【Android Studio】 GridLayout の使い方。複雑なレイアウトを表現する方法

スマホの充電がいつの間にか無くなっている@It_is_Rです。 Androidアプリ開発、10回目となりました。 前回、様々なレイアウトの使い方を紹介しましたが、今回はその中でもちょっと難しい

Dockerでよく使うコマンドとオプション、その使い方を徹底解説!

人生に意味は求めない。それよりもDockerのコマンドの意味を理解する方が重要です。@It_is_Rです。 Dockerにはたくさんのコマンドがありますが、まずはよく使うコマンドを覚えていきまし

Scratchで じゃんけんゲームを作ろう!

Scratchでじゃんけんゲームを作ろう! 小学生からのプログラミング入門

こんにちは! 今日(きょう)もプログラミングのお勉強(べんきょう)をはじめていきますよ! 前回の「Scratchの使い方と、ゲーム作りの基礎知識を学ぼう!」では、Scratch(スクラッチ)っ

キー入力で文字を切り替えるべ

【JavaScript】ノベルゲーム風にキー入力で文字を切り替える方法! 小学生からのプログラミング入門

小学生からのJavaScript講座です。 前回、文字を一文字づつ表示させる方法と改行の方法を紹介しました。 今回はこのプログラムに、キー入力によって文字を切り替えられる機能をつけてみましょう。

文字を一文字ずつ表示してみよう!

【JavaScript】改行と一文字ずつ画面に表示する方法! 小学生からのプログラミング入門

小学生からのJavaScript講座です。 このシリーズでは、ゲームをつくりながらJavaScriptの使い方を学んでいきます。 前回、画面に文字を表示するためのクラスを作ったのですが、それをもう少

【enchant.js入門】ガンシューティングゲームの作り方を完全解説!

enchant.jsを使ってガンシューティングゲームの開発を行なっていきます。 enchant.jsはゲームを作るのに特化したJavaScriptフレームワークです。 これを使うことで、Jav

メインループを作ってみよう!

【JavaScript】ゲームのメインループを作ってみよう! 小学生からのプログラミング入門

小学生からのJavaScript入門講座(にゅうもんこうざ)、第7弾です。 突然(とつぜん)ですが、ゲーム開発(かいはつ)の基本として大切なことってなんだったか覚えていますか? そうです。「変数(へ

コメントをどうぞ!(コメントは承認後に反映されます)

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です