Перейти к содержанию
  • Регистрация

Поиск сообщества

Показаны результаты для тегов 'longtap'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип контента


Форумы

  • Общие вопросы
    • Анимация
    • Графика
    • Стили
    • Базы данных и REST
    • Компоненты
    • Положение, размеры, выравнивание
    • Работа с текстом
    • Приложение и формы
    • Отладка
    • Развертывание приложений
    • Вопросы по языку Object Pascal и RTL
    • Общая информация о TControl
    • События
    • Прочие вопросы
  • Вопросы по платформам
  • Вопросы по использованию RAD Studio
  • Native FGX
  • Обучение
  • Поиск специалистов по FireMonkey
  • Дополнительные ресурсы по FireMonkey
  • Организация работы данного форума
  • Видеокурсы

Поиск результатов в...

Поиск контента, содержащего...


Дата создания

  • Начало

    Конец


Дата обновления

  • Начало

    Конец


Фильтр по количеству...

Регистрация

  • Начало

    Конец


Группа


AIM


MSN


Сайт


ICQ


Yahoo


Jabber


Skype


StackOverflow


Защита от ботов


Город


Интересы

Найдено: 2 результата

  1. x11

    ListBoxItem и OnGesture

    У ListBoxItem нужно реализовать вызов контекстного меню. На ListBoxItem лежит ImagesViwer с картинкой и у ImagesViwer свойство HitTest отключено. почитал справку http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Gestures_in_FireMonkey сделал как описано: procedure TfmEditObject.AddPhoto(Image: TBitmap); Var item: TListBoxItem; imageV: TImageViewer; begin item := TListBoxItem.Create(lbPhotos); item.parent := lbPhotos; item.text := ''; item.Width := lbPhotos.Width; item.Touch.GestureManager := GestureManager1; item.Touch.InteractiveGestures := [TInteractiveGesture.LongTap, TInteractiveGesture.DoubleTap]; item.OnGesture := ListBoxItemGesture; imageV := TImageViewer.Create(lbPhotos); imageV.HitTest := False; imageV.Parent := item; imageV.Align := TAlignLayout.Client; imageV.Bitmap.Assign(image); item.SetFocus; end; procedure TfmEditObject.ListBoxItemGesture(Sender: TObject; const EventInfo: TGestureEventInfo; var Handled: Boolean); Var s: string; begin if GestureToIdent(EventInfo.GestureID, s) then ShowMessage( S ); if EventInfo.GestureID = igiLongTap then ShowMessage( Sender.ClassName ); Handled := True; end; Ничего не происходит. На на андроид устройстве, ни на винде. И правильно ли я понял, что для LongTap, т.е. для InteractiveGestures не нужен GestureManager?
  2. Если обращаться к активному элементу в ListView по LongTap, то можно нарваться на Access Violation. Как этого добиться: Должен быть включен CanSwipeDelete. Делаем свайп, появляется кнопка Удалить. Теперь в любом месте делаем долгий тап на любом элементе и ловим AV. //на форме SpeedButton и ListView procedure TForm1.ListView1Gesture(Sender: TObject; const [Ref] EventInfo: TGestureEventInfo; var Handled: Boolean); begin if (EventInfo.GestureID=igiLongTap)or(EventInfo.GestureID=igiDoubleTap) then begin SpeedButton1.Text:=TListViewItem(ListView1.Selected).Text; end; end; procedure TForm1.SpeedButton1Click(Sender: TObject); var Item: TListViewItem; I:integer; begin ListViewPV.BeginUpdate; for I := 1 to 100 do // заполняем begin Item := ListViewPV.Items.Add; Item.ButtonText:= 'Button text'; Item.Text := 'Text '+IntToStr(I); Item.Detail := 'Detail '; Item.Accessory:=TAccessoryType.More; end; ListViewPV.EndUpdate; end; Приходится проверять что ListView1.Selected<>nil
×
×
  • Создать...