Вячеслав Опубликовано 26 июня, 2015 Поделиться Опубликовано 26 июня, 2015 Господа, проблемы с сабжем. Не работает и все тут. Может я туплю и в интернетах описаны способы регистрации события у трекбара, но у меня пока не получается. Интересует отлов отпускания мыши у компонента, созданного в Design-Time. Ссылка на комментарий
0 xenon54 Опубликовано 27 июня, 2015 Поделиться Опубликовано 27 июня, 2015 (изменено) У трекбара есть свойство "Thumb" это как раз та пимпочка на трекбаре. Нужно установить обработчик события на ней, т.е. Trackbar1.Thumb.OnMouseUp. P.S.: Вот еще можете эту темку глянуть, думаю будет полезным. Кстати в XE7 свойства Thumb небыло, оно появилось в XE8. Изменено 27 июня, 2015 пользователем xenon54 Ссылка на комментарий
0 GASCHE Опубликовано 27 июня, 2015 Поделиться Опубликовано 27 июня, 2015 P.S.: Вот еще можете эту темку глянуть, думаю будет полезным. Какую? Кстати в XE7 свойства Thumb небыло, оно появилось в XE8. А как быть в XE7? Ссылка на комментарий
0 xenon54 Опубликовано 27 июня, 2015 Поделиться Опубликовано 27 июня, 2015 (изменено) Cсылку вставил, потом убрал случайно... Вот. Изменено 27 июня, 2015 пользователем xenon54 Ссылка на комментарий
0 Вячеслав Опубликовано 27 июня, 2015 Автор Поделиться Опубликовано 27 июня, 2015 Поддерживаю вопрос о XE7. Восьмую версию устанавливать пока нет никакой возможности, да и желания как-то нет. Ссылка на комментарий
0 GASCHE Опубликовано 28 июня, 2015 Поделиться Опубликовано 28 июня, 2015 (изменено) Поддерживаю вопрос о XE7. Пример по ссылке как раз для XE7, там чуть подправлен файл FMX.StdCtrls.pas. Изменено 28 июня, 2015 пользователем GASCHE Ссылка на комментарий
0 Вячеслав Опубликовано 28 июня, 2015 Автор Поделиться Опубликовано 28 июня, 2015 В примере явным образом об этом не сказано, это один из вариантов. Может быть ув. xenon54 создал класс-наследник, свой компонент, реализовал какой-либо хак для доступа к закрытому полю абстрактного класса-предка. Просто я не очень люблю ковырять исходники, сразу получаешь привязку к конкретной машине либо приходится таскать исправленный модуль с собой. Ссылка на комментарий
0 xenon54 Опубликовано 28 июня, 2015 Поделиться Опубликовано 28 июня, 2015 (изменено) Для XE7 можно сделать так: TrackBar1.StylesData['hThumb.OnMouseUp'] := TValue.From<TMouseEvent>(form1.TrackBar1ThumbMouseUp); И не нужно таскать библиотеки с собой. Изменено 28 июня, 2015 пользователем xenon54 Вячеслав 1 Ссылка на комментарий
0 Вячеслав Опубликовано 30 июня, 2015 Автор Поделиться Опубликовано 30 июня, 2015 Отличное решение, спасибо! Только вот один момент смущает: событие срабатывает лишь в тех случаях, когда на трекбаре происходит клик мышью. А если я нажал на каретку, потащил ее в сторону и потом отпустил (как раз MouseUp), то событие не обрабатывается. Ссылка на комментарий
0 Вячеслав Опубликовано 30 июня, 2015 Автор Поделиться Опубликовано 30 июня, 2015 Все, вопрос снят. В последнем случае спасает событие onClick, т.к. оно и вызывается при отпускании мыши. Ссылка на комментарий
0 GASCHE Опубликовано 1 июля, 2015 Поделиться Опубликовано 1 июля, 2015 (изменено) Вячеслав, можно поподробней, а то у меня аналогичная ситуация с TscrollBar. PS О, с TTrackBar получилось, а вот с TscrollBar не получается xenon54, а подобного решения для TscrollBar нет? Изменено 1 июля, 2015 пользователем GASCHE Ссылка на комментарий
Вопрос
Вячеслав
Господа, проблемы с сабжем. Не работает и все тут. Может я туплю и в интернетах описаны способы регистрации события у трекбара, но у меня пока не получается. Интересует отлов отпускания мыши у компонента, созданного в Design-Time.
Ссылка на комментарий
10 ответов на этот вопрос
Рекомендуемые сообщения