Элементы управления и родительское прикосновение в THorzScrollBox - PullRequest
0 голосов
/ 25 мая 2018

У меня есть THorzScrollBox с 3 TLayout элементами управления внутри.

Я поместил некоторый код, чтобы заставить HorzScrollBox1.AniCalculations.SetTargets перейти на нужный мне макет, основываясь на моем свитке, и он был успешно запущен.

Но когда я помещаю TListView в TLayout, я не могу прокрутить его, потому что HitTest из TListView включен.Я должен отключить его, чтобы прокрутить THorzScrollBox, но если я это сделаю, TListView не сможет прокручивать по вертикали.

1 Ответ

0 голосов
/ 26 мая 2018

Если вы посмотрите демонстрацию alcinoe alFmxControl.apk (https://github.com/Zeus64/alcinoe), вы увидите, что он обрабатывает нечто похожее, но вместо TlistView это Tabcontrol и vertScrollBox.

Чтобы возобновить идею обоихTabControl и VertScrollBox получают событие mousemove, и как только вы перемещаете палец влево или вправо, то vertscrollbox деактивируется, и только tabcontrol получает событие мыши в дальнейшем, или как только вы перемещаете палец вверх или внизтогда все наоборот, tabcontrol деактивируется, и только прокрутка получает событие мыши.

Событие мыши обрабатывается с помощью CMGesture, который, как я помню, не волнует, если дочерние элементы управления перехватят событие мыши через его свойство hittest

Из этого кода вы можете вдохновиться, чтобы увидеть, как перенести его в ваш TListView

...