Rusland Опубликовано 7 октября, 2015 Поделиться Опубликовано 7 октября, 2015 (изменено) Нужно при долгом нажатии на элементе вызывать форму. Как сделать? И как обработать нажатие кнопочек ">"? Изменено 7 октября, 2015 пользователем Rusland Цитата Ссылка на комментарий
0 Модераторы Равиль Зарипов (ZuBy) Опубликовано 7 октября, 2015 Модераторы Поделиться Опубликовано 7 октября, 2015 жесты использовать, LongTap есть такое Rusland 1 Цитата Ссылка на комментарий
0 Rusland Опубликовано 7 октября, 2015 Автор Поделиться Опубликовано 7 октября, 2015 (изменено) Посмотрел вот тут пример http://docwiki.embarcadero.com/CodeExamples/Seattle/en/OnGesture_(Delphi) Компонент GestureManager обязателен? uses FMX.Gestures; { ... } procedure TFormMain.ListViewPVGesture(Sender: TObject; const [Ref] EventInfo: TGestureEventInfo; var Handled: Boolean); var S: String; begin if GestureToIdent(EventInfo.GestureID, S) then ShowMessage(S) else ShowMessage('Could not translate gesture identifier'); end; При долгом нажатии получаю "Could not translate gesture identifier". Почему? Процедура то вызывается... выходит что долгий Тап отрабатывается. А как понять какой Item вызвал процедуру? PS. В Touch -> InteractiveGestures -> LongTap выставлено True. Изменено 7 октября, 2015 пользователем Rusland Цитата Ссылка на комментарий
1 umkes Опубликовано 7 октября, 2015 Поделиться Опубликовано 7 октября, 2015 (изменено) uses System.UITypes if (EventInfo.GestureID = igiLongTap) then begin Изменено 7 октября, 2015 пользователем umkes Rusland 1 Цитата Ссылка на комментарий
0 Модераторы Равиль Зарипов (ZuBy) Опубликовано 7 октября, 2015 Модераторы Поделиться Опубликовано 7 октября, 2015 Посмотрел вот тут пример http://docwiki.embarcadero.com/CodeExamples/Seattle/en/OnGesture_(Delphi) Компонент GestureManager обязателен? uses FMX.Gestures; { ... } procedure TFormMain.ListViewPVGesture(Sender: TObject; const [Ref] EventInfo: TGestureEventInfo; var Handled: Boolean); var S: String; begin if GestureToIdent(EventInfo.GestureID, S) then ShowMessage(S) else ShowMessage('Could not translate gesture identifier'); end; При долгом нажатии получаю "Could not translate gesture identifier". Почему? Процедура то вызывается... выходит что долгий Тап отрабатывается. А как понять какой Item вызвал процедуру? PS. В Touch -> InteractiveGestures -> LongTap выставлено True. как вариант, Item то уже выбран s := Listview1.Items[listview1.itemindex].text; Rusland 1 Цитата Ссылка на комментарий
0 umkes Опубликовано 7 октября, 2015 Поделиться Опубликовано 7 октября, 2015 Или ListView1.Selected.Text Rusland 1 Цитата Ссылка на комментарий
0 Модераторы Равиль Зарипов (ZuBy) Опубликовано 7 октября, 2015 Модераторы Поделиться Опубликовано 7 октября, 2015 Или ListView1.Selected.Text в RX10 нет такого! Цитата Ссылка на комментарий
0 Rusland Опубликовано 7 октября, 2015 Автор Поделиться Опубликовано 7 октября, 2015 как вариант, Item то уже выбран s := Listview1.Items[listview1.itemindex].text; Что-то я стормозил... действительно же нужный Item уже будет Selected. Или ListView1.Selected.Text в RX10 нет такого! Я вот так обращаюсь: TListViewItem(ListViewPV.Selected).Text Цитата Ссылка на комментарий
0 Rusland Опубликовано 7 октября, 2015 Автор Поделиться Опубликовано 7 октября, 2015 Осталось только понять: Стрелочка ">" - это кнопка или что? Можно ли на нее нажать отдельно от всего Item-a? Цитата Ссылка на комментарий
0 Модераторы Равиль Зарипов (ZuBy) Опубликовано 7 октября, 2015 Модераторы Поделиться Опубликовано 7 октября, 2015 Осталось только понять: Стрелочка ">" - это кнопка или что? Можно ли на нее нажать отдельно от всего Item-a? нет это же картинка, там есть ButtonText Цитата Ссылка на комментарий
Вопрос
Rusland
Нужно при долгом нажатии на элементе вызывать форму. Как сделать?
Ссылка на комментарий
9 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.