Forum Replies Created
-
AuthorPosts
-
KSS
ParticipantКапитализм 🙂
January 30, 2011 at 2:12 pm in reply to: ListView с поддержкой групп; ProgressBar с градиентом #44669KSS
ParticipantВсем спасибо за найденные баги. В следующую версию внесу все исправления.
{Thank you all for the found bugs. I made all the fixes in the next version.}
'Rrock' wrote:Почему-то со второй колонки начинается принудительное выравнивание элементов по правому краю.
Это было сделано специально 🙂 Позже добавлю свойство выравнивания для колонок.
KSS
Participant'JM-DG' wrote:Ho! One last question…
Is it possible to get the row information when clicking on it?
Example: Retrieve the information of the 3rf column of the 2nd row clicked.
You can get Element object “TacListView.GetElementAt(MousePos: TPoint)”. See a new version of component with columns reorder on forum.
January 27, 2011 at 2:56 pm in reply to: ListView с поддержкой групп; ProgressBar с градиентом #44638KSS
ParticipantНовая версия.
Изменения:
- Добавлено событие OnItemPaint. Вызывается перед отрисовкой каждого элемента списка и позволяет изменить шрифт и скины;
- Добавлено событие OnImagePaint. Вызывается перед отрисовкой иконки элемента списка и позволяет вывести свою иконку;
- Для свойства TacColumn.SortData, добавлено значение dtDateTime для правильной сортировки дат/времени;
- Добавлено свойство GroupPopup для выпадающего меню групп. Если ему присвоить TPopupMenu, то оно будет автоматически заполняться в соответствии с состоянием группы. При этом названия элементов меню можно менять в DesignTime, но нельзя менять их имена;
- Добавлена возможность менять порядок колонок путём перетаскивания;
- Добавлено свойство TacColumns.AllowItemsReorder – включение возможности менять порядок колонок;
- Добавлено свойство TacColumn.AllowReorder – разрешение менять порядок данной колонки;
- Добавлено свойство TacColumn.Order – порядок колонки;
- Исправлены найденные ошибки.
P.S. Новая версия в первом сообщении.
{Eng} New version.
Changes:
- Added OnItemPaint event. It`s called before drawing each item of the list and allows you to change fonts and skins of item;
- Added OnImagePaint event. It`s called before items icon rendering and allows you to display another icon;
- Added dtDateTime value for TacColumn.SortData property to correct dates and times sorting;
- Added GroupPopup property for pop-up groups menu. If TPopupMenu assigned to it, it will be automatically filled in accordance with the group state. The captions of menu items can be changed in DesignTime, but you can not change their names;
- Added ability to reorder columns by dragging;
- Added TacColumns.AllowItemsReorder property – permission to change columns order;
- Added TacColumn.AllowReorder property – permission to change order of this column;
- Added TacColumn.Order property – the column order;
- Fixed some errors.
P.S. New version in the first post
January 27, 2011 at 2:26 pm in reply to: ListView с поддержкой групп; ProgressBar с градиентом #44636KSS
Participant'Rrock' wrote:Да, подобраны хорошо. Но ведь всегда …
Событие по отрисовке элемента списка и событие по отрисовке иконки я как раз планировал добавить и добавил 🙂 А с цветом подумаю ещё
'mixon' wrote:Не подскажите поддерживает ли компонент многострочные итемы?
есть ли возможность чекбоксам выставлять не активный режим?
Такими возможностями компоннт пока не обладает.
'mixon' wrote:Есть задача:
имеем 10 элементов и 3 группы, элемент может принадлежать к более чем к 1 группе, хотелось реализовать в виде 1 сторка итема свойство относящиесия к текущей группе, а далее перечень значений в других группах.
Пример Имена и страны(языки) есть группы(русскийанглийский) есть список имен (Вася,Петя,Ждон), соответственно в группу 1(русские имена попадает Вася,Петя и соответственно если есть аналог для английского написания имени типа ВасяVasia).
У элемента может быть одна группа, поэтому придётся его добавлять в разные группы, но можно разные элементы связать с одним указателем Data и ориентироваться на него.
January 25, 2011 at 3:48 pm in reply to: ListView с поддержкой групп; ProgressBar с градиентом #44576KSS
ParticipantНет, границы элементов разработчиком не меняются. А зачем понадобилось менять сдвиг элементов слева, они вроде хорошо подогнаны? 🙂
January 21, 2011 at 7:11 pm in reply to: ListView с поддержкой групп; ProgressBar с градиентом #44556KSS
Participant'stalker18' wrote:Даже если дополнить нулями сортировка будет неверная. Пример как будет, если сортировать как строки:
01.01.2011
01.02.2011
02.01.2011
02.02.2011
03.01.2011
Точно 🙂
'Rrock' wrote:Идея компонента хорошая. Группировка действительно удобная.
В разделе downloads в архиве ExtraTools лежит старая версия вашего компонента, хотя обещали ее там обновлять (почитал ветку). Ссылка на актуальную версию, как я понял, есть только в первом сообщении данной ветки.
Что хотелось бы отметить:
– Некритичный баг:
Некоторые свойство работают только при установке их в рантайме (ShowColumnHeaders, ItemSkin). Если установить ShowColumnHeaders в дизайнере, то в рантайме не показываются не только заголовки колонок, но и все элементы. Если установить эту галочку в рантайме, то все верно работает. Свойства с пользовательскими цветами (ItemFont.Color, RegularItemColor и т.д.)тоже начинают работать только если ItemSkin скинуть в пустую строку в рантайме, в дизайнере – никакого эффекта.
Хотелось бы, конечно, чтобы эти свойства могли работать и при установленном скинировании элементов, чтобы можно было менять цвет шрифта элементов (ибо опция bold при установленном ItemSkin работает, но цвет шрифта того из же ItemFont не меняется). Понятно, что если включено скинирование элементов, то их фон менять бессмысленно, но вот шрифт хочется поменять. А то черное все 🙄
Спасибо :), баги проверю, а с цветами нужно подумать как лучше сделать…
'Rrock' wrote:– Желание: хотелось бы видеть свойство ItemIndent
Для возможности указания размера сдвига элементов относительно самого левого края компонента.
У TacListItem и других элементов есть свойство Bounds: TRect – местоположение элемента на acListView (если он конечно видимый)
January 20, 2011 at 7:06 am in reply to: ListView с поддержкой групп; ProgressBar с градиентом #44517KSS
Participant'stalker18' wrote:Еще хотелось бы увидеть сортировку по дате =)
Добавлю, хотя даты должны нормально сортироваться если числа дополнены нулями.
'Ahell' wrote:а для delphi 7 подходит компонент?
Должен подойти, нужно будет только в requires заменить acnt2006_R на acnt7_R.
January 19, 2011 at 10:39 am in reply to: ListView с поддержкой групп; ProgressBar с градиентом #44506KSS
ParticipantЯ думаю, тут лучшим вариантом будет добавление строки под заголовком группы (как, например, TacGroup.Description). Если такой вариант подойдет, то это не сложно добавить 🙂
KSS
ParticipantNo, you had not missed anything 🙂 Columns reordering is not supported now, but this feature will appear in one of next component release 😉
KSS
ParticipantUser can change column size by mouse and you can change it by TacColumn.Width property.
KSS
ParticipantHello! Perhaps this component is suitable for your task – TacListView 🙂
It has TacColumn.Visible property.
January 9, 2011 at 11:36 pm in reply to: ListView с поддержкой групп; ProgressBar с градиентом #44403KSS
Participant'northener' wrote:Ещё одно замечание по “функциональности” групп.
Пользователь создал несколько групп. Но группы, как правило, не различаются только названием (если это не “справочник”). У группы должен быть набор свойств присущих именно ей. И этот набор пользователь должен иметь возможность увидеть при “выборе” конкретной группы. И изменить при необходимости.
P.S. Судя по демке Вы, создавая сей компонент, имели в виду именно вариант справочника (или вариант лога). Т.е. варианты без ручного ввода и с заранее жестко ограниченными свойствами групп (только визуальные).
В этом компоненте я пытался реализовать такие группы, которые объединяют элементы списка по какому-либо свойству. Т.е. главным является конечно элемент списка. Как я понимаю, Вам нужны группы со свойствами как и у элементов списка, но это будет уже скорее TreeView чем ListView с группами 🙂 Или у групп будут свойства отличные от свойств элементов списка, тогда как их отображать?
'northener' wrote:P.P.S. Меня, лично, интересует именно компонент такого вида, но ориентированный на ручной ввод произвольных данных. Наверно Ваш компонент мне не подходит. А требовать что-то от автора бесплатного компонента мне совесть не позволяет. Если найду время, попробую использовать Ваш код для создания своего компонента, который нужен мне.
Опишите подробнее вашу задачу, если будет не особо сложно я попробую дописать.
January 9, 2011 at 11:27 pm in reply to: ListView с поддержкой групп; ProgressBar с градиентом #44402KSS
ParticipantВсех с наступившим Новым годом! Выкладываю новую версию.
Изменения:
- Компоненты должны быть совместимы с ранними версиями Delphi (начиная с Delphi 5);
- Добавлено свойство ViewStyle, которое позволяет менять способ отображения элементов списка: vsSmallIcon – маленькие иконки, vsReport – таблица, vsTile – плитка;
- Для колонок добавлено свойство SortData, позволяет указать тип данных в столбце для правильной сортировки чисел: dtNumber – числа, dtString – всё остальное;
- Добавлено свойство ColumnPopup для выпадающего меню заголовков столбцов. Если ему присвоить TPopupMenu, то оно будет автоматически заполняться в соответствии со списком колонок. При этом названия первых двух элементов меню можно менять в DesignTime, но нельзя менять их имена;
- Добавлено свойство ListItemHeight. Задаёт режим расчёта высоты элементов списка: ihFixed – высота фиксированная и равна ItemHeight, ihImageHeight – высота равна высоте текущей иконки для элемента списка;
- Добавлено свойство AllowDeleting. Если активно, пользователь может удалять элементы списка кнопкой Del;
- Кноки LeftArrow, RightArrow, нажатые, когда фокус на группе, приводят к сворачиванию/разворачиванию группы;
- Доработан фокус для элементов списка и групп. Свойство – FocusedElement;
- Свойство ItemWidth переименовано в ReportItemWidth;
- Исправлены найденные ошибки.
P.S.
Новая версия в первом сообщении.
January 8, 2011 at 6:53 pm in reply to: ListView с поддержкой групп; ProgressBar с градиентом #44397KSS
Participant'Sereby' wrote:hi,
i was able to solve a very annoying bug that raised all the time exceptions when showing the ListView inside the IDE!
…
Problem was that Skinmanager was not availabe when checking IsValidSkinIndex!
Thanks for the correction. I`ll include it in the next version.
January 8, 2011 at 6:48 pm in reply to: ListView с поддержкой групп; ProgressBar с градиентом #44396KSS
Participant'northener' wrote:Описываю задачу.
Создал пользователь несколько групп. Далее он должен добавить в каждую какое-то количество элементов. Но все группы одного цвета. В какую из них он добавляет элемент? Когда в группе уже есть хоть один элемент группу можно выделить “открыв” её. А пока группы пустые…
Теперь понятно 🙂 В следующей версии добавлю “фокус” для элементов списка и для групп. Можно будет проверять на ком фокус…
'northener' wrote:P.S. Вы в одном из прежних сообщений приветствовали поиск ошибок пользователями компонента. В каком виде присылать найденные ошибки? Например я могу сделать тестовый проект только с Вашим компонентом и в нём повторять те ситуации, которые я получаю в рабочем проекте. Плюс описание моих действий. Плюс elf-файл от EurekaLog.
Лучше всего описать проблему и выложить пример или скрин. В идеале конечно, лучше найти решение проблемы, как это делает Sereby 🙂
January 7, 2011 at 3:36 pm in reply to: ListView с поддержкой групп; ProgressBar с градиентом #44385KSS
ParticipantПоподробнее, что это свойство должно делать?
Для выделения элементов группы, есть метод TacListGroup.SelectAll. Еще есть свойство TacListGroup.Selected.
KSS
ParticipantА кто мешает использовать тот же TRxRichEdit или TJvRichEdit? Они будут вполне нормально скинироваться.
Хотя конечно, полноценный HTMLViewer или даже editor был бы очень полезен 🙂
December 18, 2010 at 8:44 am in reply to: ListView с поддержкой групп; ProgressBar с градиентом #44231KSS
Participant'Hmm' wrote:А почему *.bpk нет в комплекте? По-моему перечень установочных пакетов должен быть аналогичным AC.
К сожалению, пока нет времени заниматься поддержкой всех сред разработки. Но при наличии исходников Вы и сами можете оформить *.bpk и поделиться с другими 😉 . А в AC эти файлы есть, т.к. пакет поставляется, в большинстве случаев, без исходников.
KSS
ParticipantПопробуй acListView, там можно программно сворачивать группы
-
AuthorPosts