DOBON.NETプログラミング道掲示板
HOME
HELP
新規作成
新着記事
ツリー表示
スレッド表示
トピック表示
発言ランク
ファイル一覧
検索
過去ログ
ツリー一括表示
タブレット等でスワイプによるスクロールを実装
/炎の妖精さん
(22/10/13(Thu) 10:06)
#35165
├
Re[1]: タブレット等でスワイプによるスクロールを実装
/炎の妖精さん
(22/10/13(Thu) 11:16)
#35168
解決
済
み!
└
Re[1]: タブレット等でスワイプによるスクロールを実装
/魔界の仮面弁士
(22/10/13(Thu) 11:14)
#35167
親記事 /
▼[ 35168 ]
▼[ 35167 ]
■35165
/ 親階層)
タブレット等でスワイプによるスクロールを実装
□投稿者/ 炎の妖精さん
一般人(7回)-(2022/10/13(Thu) 10:06:36)
環境/言語:[Windows10(64bit)_VB.NET]
分類:[.NET]
お世話になっております。
表題の通り、スワイプでのスクロールを実装したいと考えております。
Windowsフォーム上に以下のコントロールを配置しました。
■FlowLayoutPanel(スクロールを表示してここでスクロールしたい)
└■UserControl(5*10のボタンが並べられている)
├■Button01
├■Button02
…
├■Button49
└■Button50
なぜこのような配置の仕方をしている理由ですが、
タブレットの解像度が1920*1280、ボタンや文字もなるべく大きめということもあり、
5*10のボタンを配置する場合にはタブレットの画面に入りきらない為、スクロールを実装することになりました。
DataGridViewでは自動でスワイプによるスクロールが出来るのですが、
上記のような配置の場合ではスクロールが出来ませんでした。
※もちろんマウスホイールによるスクロールは可能でした
処理としてはUserControlのスクロール移動量を取得して
FlowLayoutPanelにスクロール移動量を付加させるというような処理になるのでしょうか?
スクロールに関しての処理は初めての為、ご教授いただければ幸いです。
違反を報告
Javascriptを有効にしてください
この投稿が掲示板のルールに違反しており、何らかの対処が必要であると思われる場合は、以下のフォームを利用して管理人に報告することができます。
マルチポストの報告は、
返信フォーム
の上にある「マルチポストの報告」リンクをご利用ください。
この機能の悪用は絶対にしないでください。
悪用されたと管理人が判断した場合は、予告なしで厳しい対処がなされる可能性があります。
確認等の目的で、入力されたメールアドレス宛に返信メールが送信される可能性があります。メールの受信ができないメールアドレスは入力しないでください。
下のフォームが使用できない場合は、
メールフォーム
を使って管理人にご報告ください。
お名前(必須)
メールアドレス(必須)
本文(必須)
(違反理由など)
[
□ Tree
]
返信
削除キー/
編集
削除
▲[ 35165 ]
/ 返信無し
■35168
/ 1階層)
Re[1]: タブレット等でスワイプによるスクロールを実装
□投稿者/ 炎の妖精さん
一般人(8回)-(2022/10/13(Thu) 11:16:02)
すみません。解決しました。
他社サイト様にて
C#で書かれたコードをVB.NETに書き直し
一部のコードを直したら想定通りの動作となりました。
■Windowsフォームアプリにおけるスワイプによるスクロールについて
※URLは長いので省略させていただきます。
解決
済
み!
違反を報告
Javascriptを有効にしてください
この投稿が掲示板のルールに違反しており、何らかの対処が必要であると思われる場合は、以下のフォームを利用して管理人に報告することができます。
マルチポストの報告は、
返信フォーム
の上にある「マルチポストの報告」リンクをご利用ください。
この機能の悪用は絶対にしないでください。
悪用されたと管理人が判断した場合は、予告なしで厳しい対処がなされる可能性があります。
確認等の目的で、入力されたメールアドレス宛に返信メールが送信される可能性があります。メールの受信ができないメールアドレスは入力しないでください。
下のフォームが使用できない場合は、
メールフォーム
を使って管理人にご報告ください。
お名前(必須)
メールアドレス(必須)
本文(必須)
(違反理由など)
[
親 35165
/
□ Tree
]
返信
削除キー/
編集
削除
▲[ 35165 ]
/ 返信無し
■35167
/ 1階層)
Re[1]: タブレット等でスワイプによるスクロールを実装
□投稿者/ 魔界の仮面弁士
大御所(1454回)-(2022/10/13(Thu) 11:14:13)
2022/10/13(Thu) 11:18:44 編集(投稿者)
Windows Touch あるいは スタイラス対応のタブレット デバイスが
現在手元に無いため、動作を確認せずに回答しています。
余裕があれば追って確認しますが…とりあえず状況把握として逆質問。
■
No35165
に返信(炎の妖精さんさんの記事)
> 上記のような配置の場合ではスクロールが出来ませんでした。
マウスホイールによる操作の場合、
「ホバーしたときに非アクティブウィンドウをスクロールする」
が On / Off の状態で動作が変わるかと思いますが、スワイプの場合、
上記の設定切替に近い動作にしたいのでしょうか。それともスワイプは
上記設定によらず、常に同じ動作になって欲しいのでしょうか。
https://dynabook.com/assistpc/faq/pcdata2/017955.htm
> Windowsフォーム上に以下のコントロールを配置しました。
Button, UserControl, FlowLayoutPanel のそれぞれに対して
・AutoSize プロパティによって自動変更されるもの
・Dock や Anchor などによってリサイズされうるもの
・固定サイズで配置されるもの
などがどうなっているのか定かでは無いので、
当方で状況を読み切れていない部分があるかもしれませんが:
今回、FlowLayoutPanel が採用されている理由は何ですか?
FlowLayoutPanel 内にあるコントロールが UserControl 一つだけなら
フローレイアウトになることも無さそうなので、素の Panel で良いような。
(案1) デザイン時にスクロールできない
Panel1 (AutoScroll = False)
└UserControl1 (AutoScroll = True , Dock = Fill, Anchor = Top,Left)
(案2) デザイン時にもスクロール可能だが、カプセル化しにくいかも?
Panel1 (AutoScroll = True)
└UserControl1 (AutoScroll = False, Dock = None, Anchor = Top,Left)
FlowLayoutPanel 版は、Panel 版の 案2 に近い設計なのかと予想していますが、
上記それぞれを試した時、
a) マウス(あるいはタッチパッド)によるホイール回転操作
b) マウスによるパン操作(ホイールを押しながらのドラッグ)あるいは同等のタッチパッド操作
c) スタイラス(ペン)を画面に押し付けた状態でのスワイプ操作
d) スタイラスのスクロールボタンを押した状態でのホバー操作
e) Windows Touch によるスワイプ操作
の動作に違いが生じるでしょうか。それとも 案1/案2 で変わらないでしょうか。
a と d は非アクティブ状態でも操作できるのに対して、
b, c, e はタップ(あるいはクリック)操作が先に入るので、
常にアクティブウィンドウに対して操作することになるという違いがありそうです。
ところで、今回のスワイプ操作はどの場所から始める想定でしょうか?
ア) FlowLayoutPanel のスクロールバー部
イ) FlowLayoutPanel の余白部(UserControl の外側)
ウ) UserControl のクライアント領域
エ) 各ボタンの上
オ) 上記以外
フォーカスを受け取れるコントロール、かつ、スクロール可能なコントロールの
上でスワイプ操作を開始すると、スクロールが発生し無さそうなので
念のために確認しています。
違反を報告
Javascriptを有効にしてください
この投稿が掲示板のルールに違反しており、何らかの対処が必要であると思われる場合は、以下のフォームを利用して管理人に報告することができます。
マルチポストの報告は、
返信フォーム
の上にある「マルチポストの報告」リンクをご利用ください。
この機能の悪用は絶対にしないでください。
悪用されたと管理人が判断した場合は、予告なしで厳しい対処がなされる可能性があります。
確認等の目的で、入力されたメールアドレス宛に返信メールが送信される可能性があります。メールの受信ができないメールアドレスは入力しないでください。
下のフォームが使用できない場合は、
メールフォーム
を使って管理人にご報告ください。
お名前(必須)
メールアドレス(必須)
本文(必須)
(違反理由など)
[
親 35165
/
□ Tree
]
返信
削除キー/
編集
削除
Mode/
通常管理
表示許可
Pass/
HOME
HELP
新規作成
新着記事
ツリー表示
スレッド表示
トピック表示
発言ランク
ファイル一覧
検索
過去ログ
-
Child Tree
-