Windows 7のマルチタッチ環境は、まだ過渡期のものですので、実際に触れたことがない方も多いのではないでしょうか? まずは「Multi-Touch Vista」を使い、Windows 7がどのようなタッチ操作ができるのかを見てみましょう。
疑似的なドライバを実行する特殊な操作のため、「Multi-Touch Vista」を起動する過程で、一時的にマウス操作ができない瞬間があります。そのときにはキーボードを使用した画面操作が必要になります。[Alt]+[Tab]によるウィンドウ切り替え、[Tab]キー、矢印キー、[Enter]キーによるアプリの基本的な操作ができることを確認のうえ、以下を参照してください。
複数のマウスを接続したWindows 7の環境を準備します。CodePlexのMulti-Touch Vistaのダウンロードページよりダウンロードし、初めに疑似マルチタッチデバイスのドライバをインストールします。
「Driver」フォルダには使用OSが32ビットもしくは64ビットに応じて「x32」「x64」フォルダがありるので、環境にあったフォルダの「Install driver.cmd」を管理者権限で実行すると、ドライバのインストール行われます。Windows 7がタッチデバイスの接続を認識すると、タスクバーの右端の「デスクトップの表示」ボタンが通常よりも幅が広くなります。
これは指で操作が行いやすいようにOS自動で変更するものです。ここでドライバのインストールが成功したかを確認できます。
次にサービスコンソール、ドライバコンソールの順に起動します。
「Multitouch.Service.Console.exe」「Multitouch.Driver.Console.exe」の2つを起動すると、カーソルの他に赤い丸のカーソルが現れます。この状態では、赤い丸のカーソルは独立して操作できません。ここからさらに「Multitouch.Configuration.WPF.exe」を実行します。
この設定画面が表示されたら、[Configure Device]をクリックすると、さらに小さなウィンドウが表示されます。
[Block native windows mouse…]のチェックボックスにチェックをして、[OK]ボタンをクリックします。
以上で設定は完了です。この状態でマウスクリックすると、赤い丸のカーソルに、以下のような波紋が表示されます。これはタブレットPCやタッチパネルで画面をクリックしたときと同じ挙動ですので、Windows 7がタッチ入力として認識をしていることが分かります。
この時点でタッチ操作と見なされ、マウスの右クリックやスクロールホイールは動作しなくなりますので、ご注意ください。また、赤い丸のカーソルはコンテキストメニューの手間に表示されないため、コンテキストメニューの操作時は矢印キーを併用すると便利です。
また、クリックが認識されない場合は、疑似ドライバが正しく動作していない可能性があります。Windowsを再起動のうえ、上記操作を再度行ってみてください。
「Multi-Touch Vista」を終了する場合は、起動している2つのコンソール画面で[Enter]キーを入力して終了させます。どちらか1つを終了するとマウスクリックができなくなるので、[Alt]+[Tab]キー操作を使ってウィンドウを切り替えてください。
「Multi-Touch Vista」は、ちょっとした確認には最適ですが、アプリ開発で検証すべき「実際に画面上でタッチしやすいか?」「ノイズによる誤動作は起きないか?」といった細かなことは検証できないので、完全な代替手段ではないことに注意が必要です。
具体的にマルチタッチアプリの開発を考えたとき、Windows 7がマルチタッチを標準でサポートしたことにより、Win32 API、Windows Form、そしてWPFと、幅広いスタイルで開発できます。
また、マルチタッチ操作をアプリに盛り込む場合、マルチタッチに最適化したアプリ開発も1つの選択肢ですが、ジェスチャなどのすでに用意されているものを効率的に盛り込むだけでもアプリの使い勝手を向上できます。これを以下のように3段階に分類できます。
以下の3レベルに照らし合わせ、開発するアプリがどのレベルに対応させるかは、1つの指針として参考になると思います。次回以降、これを参考にマルチタッチアプリを設計・実装します。
ユーザーが行ったタッチ操作の情報から、アプリに合わせてタップ、回転、ズームなどの操作を判別する方法です。個別に判別処理を記述しなければいけませんが、きめ細かく判別できます。
すでに用意されているジェスチャを活用する方法です。回転、ズーム、ドラッグなど、種類は限られますが、実現したいジェスチャ操作がある場合は、【1】の「最適化する」に比べ容易に実装できます。
上に述べたように、Windows 7がOSとしてサポートしたことにより、ListBoxコントロール標準のコントロールを使用するだけで、タッチによるスクロール操作や、右クリックジェスチャも利用可能です。
Windows 7が登場する前のアプリでも、タッチによるスクロール操作などができるのは、このためです(もちろん、タッチしやすいボタンの大きさなどの考慮は別途必要です)。
Windows 7でのマルチタッチを体験してみていかがでしたか? 単純に「指で操作できる」だけではない、プラスアルファの要素が盛り込まれていることを体験いただけたと思います。
また、Multi-Touch VistaはWindows Phoneのアプリ開発でもマルチタッチ操作のシミュレーションに利用できます。さまざまなタッチアプリケーション開発で、このツールをぜひ活用してみてください。
次回は、タッチインターフェイスの特性、NUI(Natural User Interface)について解説し、マルチタッチアプリケーションの具体的な開発手順をご説明します。
Copyright © ITmedia, Inc. All Rights Reserved.