LoginSignup
2
1

More than 3 years have passed since last update.

JUCEで作ったアプリでタッチ操作のスクロールを有効にする

Last updated at Posted at 2019-01-22

JUCEで作ったアプリは、iOS用(Androidもたぶん。知らんけど)のアプリはListBoxなんかがタッチというかフリック操作でスクロールできるけど、Mac/Windows/Linux用にビルドしたものではそれが有効になっていない。ViewPort::setScrollOnDragEnabled()を使うとこれを有効にできる。例えば、ListBox* listBoxがあるとしたら下記のようにすればいい。

listBox->getViewport()->setScrollOnDragEnabled(true);

これをしないと、作ったアプリをMicrosoft Surfaceのようなタブレットデバイスで操作した時に非常に使いにくいものになってしまう。ただし、タッチでListBoxのアイテムがクリックされる時の挙動がちょっと変わる(ListBoxModel::listBoxItemClicked()がクリック時にすぐに呼ばれなくなる)ので注意。

TableListBoxは挙動が違っていて、上記を行っても行わなくても、タップした瞬間行が選択され、フリックもできる仕様になっているっぽい。タップした瞬間に選択されてしまうのはiOS/Android用アプリとしてはめちゃくちゃ使いづらいが無効にする方法がわからない。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1