Windows8でDelphiXE5のsampleのImageZoomを試しています。
USB接続でAndroidでZoomは動作します。ターゲットプラットフォームに
Win32を追加して、Windowsで動作させようとしました。画面は表示されますが
Zoomができません。PCはThinkPadでタッチパッドがついていてジェスチャー
に対応できている機種です。
EventInfo.GestureIDが0でOnGestureイベントが発生することはありますが、igiZoomにはならないです。
使用方法とかを誤解しているのでしょうか?
ハードウェアはマルチタッチに対応していますか?
(ジェスチャではありません)
コンピュータのプロパティを開き、
「ペンとタッチ」に "2 タッチポイントでタッチ入力が可能"
と表示されているでしょうか?(2 タッチ以上ならズームが可能)
[マルチタッチアプリケーションのサンプル (Embarcadero)]
http://blogs.embarcadero.com/teamj/2011/05/30/2019/
コレに付属のマルチタッチテスターでテストするとどうなりますか?
> ターゲットプラットフォームにWin32を追加して、
> Windowsで動作させようとしました。
...という事は FireMonkey ですか。
FireMonkey かつ Windows 8 / 8.1 の場合、対話型ジェスチャと標準ジェスチャを同時に使用することはできません。
[FMX と VCL のジェスチャの違い (DocWiki)]
http://docwiki.embarcadero.com/RADStudio/XE5/ja/FireMonkey_%E3%81%A7%E3%81%AE%E3%82%B8%E3%82%A7%E3%82%B9%E3%83%81%E3%83%A3#FMX_.E3.81.A8_VCL_.E3.81.AE.E3.82.B8.E3.82.A7.E3.82.B9.E3.83.81.E3.83.A3.E3.81.AE.E9.81.95.E3.81.84
これに該当していませんか?
DEKOさん、早速の返答ありがとうございます。
>ハードウェアはマルチタッチに対応していますか?
>(ジェスチャではありません)
対応できていると思います。ブラウザでZoomができます。
>コンピュータのプロパティを開き、
>「ペンとタッチ」に "2 タッチポイントでタッチ入力が可能"
>と表示されているでしょうか?(2 タッチ以上ならズームが可能)
「このディスプレイでは、ペン入力とタッチ入力は利用できません」
となっていますが、ThinkPadのクリックパッドで実現できていると
思います。
>[マルチタッチアプリケーションのサンプル (Embarcadero)]
>http://blogs.embarcadero.com/teamj/2011/05/30/2019/
>コレに付属のマルチタッチテスターでテストするとどうなりますか?
mt_testerでは、左の「InteractiveGestures」と「InteractiveGestureOptions」
をすべてチェックしても、右のリストには
「タップ」「ダブルタップ」「プレス & ホールド」しか表示されません。
「フリック」「ズーム」は表示されないです。
mtViewerでは、二本指でのズームができます。フリックはクリックパッド
の上を軽くなぞる感じではできず、クリックパッドを強く推して移動して
離す(マウスでのドラッグと同じ)ことでフリックと同様の動作は可能です。
>....という事は FireMonkey ですか。
>FireMonkey かつ Windows 8 / 8.1 の場合、対話型ジェスチャと標準ジェス
>チャを同時に使用することはできません。
>これに該当していませんか?
FireMonkeyです。
GesturesのStandardには何もチェックが入っていません。
InteractiveGesturesにはとりあえずすべてチェックを入れてみました。
上記mtViewerだとZoomができるので、どこか設定に誤りがあるのでしょうか?
> 「このディスプレイでは、ペン入力とタッチ入力は利用できません」
> となっていますが、ThinkPadのクリックパッドで実現できていると思います。
...であれば、igZoom は飛んできません。フリックも利用できません。
[スレート PC プログラミング]
http://ht-deko.minim.ne.jp/tw317/#05_11
ブラウザ と mtViewer でズームできる理由ですが、
タッチパッドでズームのジェスチャを行った場合、
[Ctrl]+[マウスホイール]が飛んできているのだろうと推測されます。
ですので、[Ctrl]+[マウスホイール]を判定してみてください。
>...であれば、igZoom は飛んできません。フリックも利用できません。
出来ないのですね。
>[スレート PC プログラミング]
>http://ht-deko.minim.ne.jp/tw317/#05_11
これは面白いですね。ためになります。情報ありがとうございます。
>ですので、[Ctrl]+[マウスホイール]を判定してみてください。
VCLだと[Ctrl]+[マウスホイール]で判定できました。
FireMonkeyだと、
if ssCtrl in shift then ・・・・
が不可ですね。これがない状態で判別できました。
なるほどこうやっていくんだ、と驚くことばかりです。
ありがとうございました。
ツイート | ![]() |