Виктор
Пользователи-
Постов
30 -
Зарегистрирован
-
Посещение
-
Победитель дней
2
Виктор стал победителем дня 31 июля 2014
Виктор имел наиболее популярный контент!
Достижения Виктор
-
Rusland отреагировал на ответ на вопрос: Как получить TListBoxItem по индексу в TListBox?
-
Евгений Корепов отреагировал на ответ на вопрос: Сокращается текст в компоненте TLabel
-
Доброго дня, комрады. Как в listview сделать перетаскивание конкретного item, а в частности его изображения? Создали item-ы, загрузили изображения. Bitmap:=TBitmap.Create(120,120); Bitmap.LoadThumbnailFromFile(Memo1.Lines[Count-1],120,120); ListItem:=listview1.Items.AddItem; ListItem.Bitmap.Assign(Bitmap); Отключили в listview все кнопки и надписи. Остались только изображения и скрол. А автоматическом режиме, не получается выделить item, и переносит сразу весь listview
-
Допустим есть несколько копий приложения запущенных с разных компьютеров не в локальной сети. Расскажите как лучше всего организовать обмен информацией между ними? Какими компонентами лучше воспользоваться, как все построить? Предположим есть два варианта, у нас есть отдельно стоящий компьютер выполняющий роль сервера, и вариант когда такого компьютера нет. Для справки допустим что мы создаем самый простой аркадный Примитивный космический симулятор, для некой ролевой игры.
-
Для этого надо найти ближайшего родителя у элемента класса, нужного класса (прошу прощения за тавтологию). С помощью вот такой вот универсальной функции. Item := TListBoxItem(FindItemParent(Sender as TFmxObject,TListBoxItem)); function FindItemParent(Obj: TFmxObject; ParentClass: TClass): TFmxObject; begin Result := nil; if Assigned(Obj.Parent) then if Obj.Parent.ClassType = ParentClass then Result := Obj.Parent else Result := FindItemParent(Obj.Parent, ParentClass); end;
-
Brovin Yaroslav отреагировал на ответ на вопрос: Как получить TListBoxItem по индексу в TListBox?
-
Kitty отреагировал на сообщение в теме: Советы по созданию мобильного приложения Master-Detail
-
Если у вас на клики по элементам ListView не будет больше никаких действий, то правильней будет если пользователь будет иметь возможность кликнуть в любую часть строки (для этого обработку клика надо делать всей строки, а элементам отключать HitTest). Галочек как и полос прокрутки на мобильных девайсах стоит по возможности избегать, по ним неудобно попадать. В качестве места для расположения редактора времени я бы предложил невидимую до нажатия панельку, это ускорит работу ибо не потребуются ресурсы на создания окна. Уточню, что я не в курсе как там дела именно на android-е, и можно ли там отрисовать панельку поверх других элементов формы. Но если можно это на мой взгляд лучший вариант. А область за панелькой просто затемнить в момент её появления, что бы сконцентрировать внимание пользователя на ней.
-
Доброго дня. Суть вопроса в следующем. Мне надо создать директорию, в название которой надо положить путь к другой директории. Разумеется надо обойти проблему недопустимых символов / и : . И длину. В win путь не может превышать 255 символов. Таким образом мне надо еще и ужать путь хотя бы до максимум 100 символов. Не подскажите как средствами языка реализовать подобное?
-
А для win можете подсказать? Как не пытаюсь что-то не получается
-
Реализовать данные события можно через стили. Находишь в стиле элемент клик на который должен вызывать раскрытие или закрытие дочернего элемента (плюсик, стрелочка и т.д.). Как правило это элемент класса TButton или TButtonStyleObject, что бы мог изменять состояние при нажатии автоматически. Создаешь процедуру которая будет присваивать элементу стиля обработчик нажатия. procedure TFForder.TreeView2ApplyStyleLookup(Sender: TObject); var Item: TTreeViewItem; begin Item := TTreeViewItem(Sender); Item.StylesData['button'] := TValue.From<TNotifyEvent>(Click); end; При создании дочернего элемента TTreeView: It.OnApplyStyleLookup := Treeview2.OnApplyStyleLookup; И пишешь саму процедуру при нажатии на элемент стиля где выясняешь надо свернуть или развернуть элемент: function FindItemParent(Obj: TFmxObject; ParentClass: TClass): TFmxObject; begin Result := nil; if Assigned(Obj.Parent) then if Obj.Parent.ClassType = ParentClass then Result := Obj.Parent else Result := FindItemParent(Obj.Parent, ParentClass); end; procedure TFForder.Click(Sender: TObject); var Item: TTreeViewItem; begin TreeView2.BeginUpdate; Item := TTreeViewItem(FindItemParent(Sender as TFmxObject,TTreeViewItem)); if Item <> nil then if Item.IsExpanded = False then begin //здесь пишешь то что надо сделать при разворачивании элемента Item.Expand; end else begin //здесь пишешь что надо сделать при сворачивании элемента Item.Collapse; end; TreeView2.EndUpdate; end;
- 1 ответ
-
- OnCollapsed
- TTreeView
-
(и ещё 1 )
C тегом:
-
А можно в принципе по подробней как это реализовать. Я думаю с этой проблемкой столкнуться многие в том числе и новички
-
Добрый день. Берем XE6. Берем дефолтный дизайнер, дефолтный стиль. Генерим тест Faremonkey style. Пытаемся максимизировать окно кнопкой на заголовке формы. Кнопка меняет свой стиль, а вот окно не максимизируется. Тоже самое происходит и если в stylebook положить стиль для формы. Новые бордюры и кнопки отрисовываются, а вот оно перестает максимизироваться. Однако если запустить тот же дефолтный стиль под тестом VCL, то окно спокойно увеличивается. Как побороть сей казус?
-
Resize дает плохой результат. При уменьшении размеров форма в начале уменьшается, а потом увеличивается, в результате мерцание. Раньше вроде было событие onCanResize которое срабатывало перед изменениями размеров, но счас такого не нашел.
-
Вопрос конечно не шибко умный, что то в пятницу вечером не могу сообразить. Как выставить минимальные размеры формы? Что бы меньше было нельзя никак уменьшить
-
Не, не, Optimus работает только с win 7 и выше. Я говорю про стандартные общие настройки. Регулировка настроек приложения с просмотром. Там есть галочка "согласно настройкам приложения" когда её отключаешь и выкручиваешь качество на максимум вроде сглаживание появляется. Отсюда делаем вывод, что приложение просто не сообщает что его надо сглаживать.
-
Виктор отреагировал на ответ на вопрос: Доступно ли сглаживание на Windows XP?
-
Во слышу, объективную речь. Тут дело вот в чем, в настройках NVIDIA зачастую стоит "как указанно в приложении" по крайней мере там где я тестировал, так вот приложение не сообщает что его надо сглаживать. А вот если выставить настройки видеокарты в максимум, то кое какое сглаживание начинает появляться. На рабочем компе у вас просто наверно на макс. выставлено. В инете говорят, что сглаживание на ХР то появлялось то исчезало от ХЕ2 до ХЕ6, от обновления к обновлению и все не могли нормально сделать. Ме поверю, что нельзя подкрутить что бы сглаживание заработало.