Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

C++/CX: Windows 8 ストアアプリことはじめ

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2013/04/30 14:00

 C++/CXによる Windows 8ストアアプリに手を付けようと思います。まずはいつもの「カウンター」を例に、ストアアプリの基本を学ぶところから。

目次

はじめに

 Visual C++ 2012(vc11)のセールスポイントの一つは何といってもC++/CXでしょう。C++/CLIが.NET対応managed拡張であるのに対し、C++/CXはnative拡張、Windows 8ストアアプリのUIデザインをC#/VBと同様XAMLを使ってできるとのこと。C++屋の僕には魅力的な言語拡張です。

 僕の愛機はいまだにWindows 7。開発環境その他モロモロのツールやアプリが山ほど積み込まれているものだから、Windows 8に乗り換えるのがどえらい手間でためらっていたところ、二世代前の重くてデカいノート機を譲り受けました。ここぞとばかりにWindows 8とVisual Studio 2012をインストールし、小手調べにC++/CXで書かれたサンプルコードを探し回っていたのですが、「はじめの一歩」にふさわしい、簡単だけどきちんと書かれたサンプルは見つけられずじまい。C#/VBコードを読み漁ってC++/CXにポートしたりお友達に訊きまくったりのブザマな出だしとなりました。

 今回はそのブザマなトコを舞台裏に隠し、スマートにサクサクと事を進めたかのようなC++/CXストアアプリの「はじめの一歩」を(スクリーンショットたっぷり付けて)お披露目します。

ストアアプリのひな形を作る

 お題は「WPFアプリケーションで腕試し」で使った"カウンタ"を選びました。C++/CXでストアアプリ版カウンタを作ります。

 では早速、新しいプロジェクト→Visual C++/Windowsストアから"新しいアプリケーション(XAML)"を選び、必要最小限のコードセットを吐いてもらいます。

 プロジェクトの選択肢としては、この他にも"グリッドアプリケーション"や"分割アプリケーション"がありますが、これらは「はじめの一歩」にしてはあまりにややこしい。なので"新しいアプリケーション"を選んだけれど、こいつの吐くコードは単純すぎて扱いにくそう。二歩三歩と進む際につまづいてしまいそうです。ひな形を吐いてくれたVisual Studioくんには悪いけど、一部棄てて差し替えることにします。吐かれたコードセットからMainPage.xamlを右クリックし削除してください。

 しかるのち、プロジェクト→新しい項目の追加から"Windowsストア/基本ページ"を追加します。名前はさきほど削除したMainPage.xamlで。不足しているファイルを追加するか?と訊いてくるので"はい"と答えてください。

 差し替えたMainPage.xamlに手を加えます。16行目あたりのページタイトルをテキトーに書き換え、40行目あたり(</Grid>直後/<VisualStateManager.VisualStateGroups>直前)に以下のXAMLコードを追加します。

list01
<!-- 新たに追加: ここから -->
<Grid Grid.Row="1">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="120"/>
        <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>
    <Grid Grid.Column="1" x:Name="CounterPage">
        <!-- このGridの中にコントロールを配置します -->
    </Grid>
</Grid>
<!-- 新たに追加: ここまで -->

 んでもって上記の"CounterPage"と名前を付けたGrid内にTextBlock:txtCountとButton:rtnInc,btnDecを配置します。

 2つのボタンには、クリック時のイベントハンドラ:btnInc_Click,btnDec_Clickを与えておきましょう。

 ここでビルド/実行すれば中身からっぽのカウンタが現れるハズ。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • επιστημη(エピステーメー)

    C++に首まで浸かったプログラマ。 Microsoft MVP, Visual C++ (2004.01~) だったり わんくま同盟でたまにセッションスピーカやったり 中国茶淹れてにわか茶人を気取ってたり、 あと Facebook とか。 著書: - STL標準講座 (監修) -...

All contents copyright © 2005-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5