本稿に掲載したコードを試すだけなら、無償のExpressエディションやCommunityエディションで構わない。Windows(製品版)はマイクロソフトのページから無償で入手できる。Desktop」はデスクトップで動作するアプリ用)。4(製品版)もマイクロソフトのページから無償で入手できる。Packの日本語版を追加インストールし、[オプション]ダイアログで言語を切り替える必要がある。3/4も)では、残念なことにVB用のユニバーサルプロジェクトのテンプレートは含まれていない*6。そのため、本稿で紹介するVBのコードはユニバーサルプロジェクトではなく、PCL(ポータブルクラスライブラリ)を使ったプロジェクトのものである。14」)からの提供となるようだ。Microsoft)」からの回答による。8.1向けに開発したWindowsランタイムアプリでは、画面の上端/下端からのスワイプ(マウス操作では右クリック)で表示されるアプリバー(Windows.UI.Xaml.Controls名前空間のAppBarコントロール)を利用していることも多いだろう。10にそのようなアプリをインストールすると、タッチでの操作が少々やりにくくなるのだ(次の画像)。そのため、細部では製品版と異なる可能性がある。8.1向けの既存のアプリをインストールして実行したものだ。10では、Windowsランタイムアプリはこの画像のようにデスクトップ上でサイズ可変のウィンドウとしても実行できるようになる。これまで画面のエッジからのスワイプ(マウス操作では右クリック)で行っていたアプリバーの表示方法も変わる。10でのタッチ操作では、タイトルバー左端のボタン(通称「ハンバーガーボタン」、赤丸内)で出てくるメニュー(以降「ハンバーガーメニュー」、赤枠内)から行うようになるのだ。コマンド]メニューにタッチしなければならない。フォーラム編」である。アプリバーヒントこのようなタッチでの操作性低下を補う手段としては、前回で紹介したようなアプリバーを開くボタンを設置する方法もある。一つの方法として、「アプリバーヒント」*7がある。「[...]ボタン」などと表記した方が分かりやすいかもしれない。Phoneのアプリバーでは以前からそうなっており、特に呼び名はなかったように思う。Ellipsis」(省略記号付きのアプリバー)などとも呼ばれている。hint」)と紹介されている。Phoneのアプリバーには標準で備わっている(次の画像)。赤色の部分がアプリバーだ。左側が閉じた状態、右側が開いた状態である。Phoneのアプリバーは、閉じた状態でも完全に消えない。このように[...]が常に表示されているので、その部分(実際には赤色の部分のどこでもよい)をタッチしてアプリバーを開けられるのである。8.1で上のようにするには、次のコードのようにXAMLでプロパティを指定するだけだ。8.1でアプリバーヒントを表示するコード例(XAML)ClosedDisplayModeプロパティに「Minimal」と指定するだけである。「Minimal」の他に「Compact」を指定でき、その場合は閉じた状態でもアプリバーボタンが見えている状態になる(アプリバーボタンのラベルは隠れる)。8.1には存在しない*8。8.1向けのWindowsランタイムアプリでも、アプリバーヒントを独自に実装しているものもある(次の画像)。独自にアプリバーヒントを実装しているアプリの例これはマイクロソフトの「カレンダー」アプリである。上の画像、左はアプリバーが閉じた状態で、右は開いた状態だ。下の画像は、閉じた状態のアプリバー右端付近を拡大したものだ。丸い点が三つ並んでいる([...]の部分)が、これがアプリバーヒントである。「カレンダー」アプリでは、ご覧のようにツールチップも出る。アプリバーヒントの部分をクリック/タップすれば、アプリバーが開く(実際には、それ以外の部分をクリック/タップしても開く)。8.1用としてリリースされた当初から実装されていたものである。8.1ストアアプリ開発]」に掲載した画像にもアプリバーヒントが写っているので、ご覧あれ。10ではデバイス共通のAPIとして実装されるもようだ。MSDN参照(本稿執筆時点では英語のみ)。8.1には存在しない)。8.1では、細長いボタンとして実装すればよい。画面下端の最前面に来るように、横幅一杯のボタンを配置する。[...]の表示には、コントロールテンプレートを使うとよいだろう。ボタンのクリックイベントでアプリバーを開いてやればよいのである(次のコード)。アプリバーを開いたときにボタンを隠したりする必要はない(アプリバーを透過させない場合)。アプリバーはさらに前面に表示されて、ボタンを隠してくれるのだ*9。アプリバーを透過させる(透明、あるいは半透明にする)場合は、ボタンが透けて見えてしまう。そのときは、アプリバーの開閉に合わせてボタンの表示/非表示を切り替えねばならない。具体的には、アプリバーのOpenedイベントでボタンを非表示にし、アプリバーのClosedイベントでボタンを表示すればよい。8.1用のアプリバーヒントをボタンで実装する例(XAML)最前面に配置されるよう、最後にButtonコントロール(Windows.UI.Xaml.Controls名前空間)の定義を書く。「VerticalAlignment="Bottom"」で画面の下端に配置し、「HorizontalAlignment="Stretch"」で画面幅一杯に広げる。そのままではボタンの高さがありすぎるので、コントロールテンプレートを使って表示を変更している。8.1用のアプリバーヒントのコードビハインド例(上:C#/下:VB)上のXAMLコードで示したボタンのクリックイベントで、アプリバーを開く。ここまでのコードではまだアプリバー自体を実装していないため、この状態でアプリを実行するとエラーになる。次に、アプリバーのコードである。Phoneでは開いたアプリバーにもアプリバーヒントが出ている。それをクリック/タップするとアプリバーが閉じるのだ。これも実装してみよう(次のコード)。8.1用のアプリバーの例(XAML)アプリバーの定義は最初に書かねばならない。太字にした部分が、アプリバー上に[...]を表示するコードである。AppBarButtonコントロール(Windows.UI.Xaml.Controls名前空間)の見た目を、コントロールテンプレートを使って変更している。8.1用のアプリバーのコードビハインド例(上:C#/下:VB)上のXAMLコードで示したボタンのクリックイベントで、アプリバーを閉じるようにする。10041に持ってきてインストールした。実行した結果が、次の画像である。8.1でもちゃんと動作する。10)左はアプリバーが閉じた状態で、右は開いた状態である。閉じた状態でアプリバーヒント[...]をクリック/タップすれば、アプリバーが開く(実際には、それ以外の部分をクリック/タップしてもよい)。開いた状態でアプリバーヒント[...]をクリック/タップすれば、アプリバーは閉じる。10で操作性が低下してしまうことへの対策を講じた方がよい。本稿では、アプリバーを開きやすくするアプリバーヒントを画面に追加する方法を紹介した。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。