![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Найдены классные компоненты TMS Grid Pack.
К сожалению они не бесплатны. Если кто работал с такими компонентами, то пожалуйста выкладываете сюда свои примеры и секреты работы с этими компонентами. |
|||
|
||||
z-END |
|
|||
![]() прафесар™ ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3014 Регистрация: 13.3.2003 Где: Венья, Пиетари Репутация: 11 Всего: 102 |
![]() а вобще кривые они, я сними повозился и плюнул. -------------------- Каждый чилавек пасвоему праф...а памоему НЕТ! |
|||
|
||||
Alex |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4147 Регистрация: 25.3.2002 Где: Москва Репутация: 80 Всего: 162 |
Не кривые, а много функциональные. -------------------- Написать можно все - главное четко представлять, что ты хочешь получить в конце. |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Вообще-то согласен, тоже дума, что кривые, начинаю разбираться (не без помощи Alexa), начинют нравиться. Но давайте все-таки по теме. ![]() Это сообщение отредактировал(а) dsergey - 2.2.2005, 13:10 |
|||
|
||||
z-END |
|
|||
![]() прафесар™ ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3014 Регистрация: 13.3.2003 Где: Венья, Пиетари Репутация: 11 Всего: 102 |
Alex
буду рад если это будет проходить не через приват, а так сказать широковещательно! ![]() -------------------- Каждый чилавек пасвоему праф...а памоему НЕТ! |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Вижу пока мало кто пытался разобраться с этими компонентами.
К стати справка и демо-примеры скудноваты. В примерах задействовано около 2-3 событий из 128!!! возможных! Скоро начну выкладывать свои примены и наработки. |
|||
|
||||
Akella |
|
||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Итак, в сетке есть возможно динамически создавать компоненты в ячейках.
Создаем разные компоненты в разных ячецках в событии OnGetEditorType
возможные варианты для AEditor Значение edNormal Edit cell using edit control edSpinEdit Edit cell using spin edit control edFloatSpinEdit Edit cell using float spin edit control edTimeSpinEdit Edit cell using time spin edit control edDateSpinEdit Edit cell using date spin edit control edComboEdit Edit cell using default ComboBox control edComboList Edit cell using ComboList control edEditBtn Edit cell using edit box with button control edUnitEditBtn Edit cell using edit box + unit field control edDateEdit Edit cell using date validated edit control edButton Edit cell using button control edNumeric Edit cell using numeric validated edit control edPositiveNumeric Edit cell using positive numeric validated edit control edFloat Edit cell using floating point validated edit control edCapital Edit cell using edit control UPPER CASE only edMixedCase Edit cell using text validated edit control edLowerCase Edit cell in all lower case characters edUpperCase Edit cell in all upper case characters edTimeEdit Edit cell as time edDateEditUpDown Edit date with updown button edPassword Edit as password edRichEdit Rich text inplace editor edCustom A custom inplace is used. This is set through the property. Названия сами за себя говорят, если кому не понятно - спрашивайте. Добавлено @ 15:24 Как узнать, какое значение попадает в ячейку после закрытия выпадающего списка
|
||||
|
|||||
Akella |
|
||||||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Как узнать активную строку во время редактирования ячейки, в тех случаях, когда нет возможности в прямо в событии узнать, как напрмер ACol, ARow: Integer;
в таких событиях, как OnKeyPress
Применение
Добавлено @ 15:40 Метод SaveToFile сохраняется в текстовом виде, но обчный TStringGrid корректно этот файл не прочитает, хотя проанализировав его, можн программно прочитать. А сделано грамотно.
Если подумать, то можно понять, что цыфири означают координаты ячейки, далее данные Добавлено @ 15:41 Как закрасить ячейку или поменять шрифт
Добавлено @ 15:44 Пока всё, спасибо за внимание. Надеюсь будет продолжение. Такую тему можно было и для DBGridEh создать. |
||||||||
|
|||||||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
В свойствах TMouseAction есть свойство AllColumnSize - при изменении ширины одной из колонок сетки, пропорционально меняют ширину все остальные колонки (помучался я с этим свойством)
Это сообщение отредактировал(а) dsergey - 3.2.2005, 17:47 |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
В свойстве Navigation есть пункты
AllowInsertRow:bool - добавление новой строки при нажатии Insert на клавиатуре AllowDeleteRow:bool - удаление активной строки при нажатии Delete на клавиатуре на програное добавление или удаление строк эти свойства не влияют. |
|||
|
||||
Akella |
|
||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
В сетке есть такая проблема, а может и не проблема.
Если Вы редактируете ячейку, и находясь в режиме редактирования вызвали сохранение сетки,
для того, что-бы данные ячейки сохранились, нужно выйти из ячеки (можно в другую) или
|
||||
|
|||||
fess |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 125 Регистрация: 17.2.2005 Где: г. Мурманск, Росс ия Репутация: 2 Всего: 3 |
Избавление от надписи о триальной версии в последней строке:
Способ первый: Просто делаем высоту последней строчки=0 и сообщение, что это триальная версия пропадает. Но это необходимо делать каждый раз при изменении количества строк в AdvStringgrid'е.
В принципе должно работать на всех версиях. Я проверял только на двух последних версиях. Это сообщение отредактировал(а) Alex - 17.2.2005, 20:57 --------------------
Компьютер не подчиняется законам физики. Только в нём глюки возникают из ничего, файлы исчезают в никуда, а объём измеряется в метрах и называется весом. |
|||
|
||||
fess |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 125 Регистрация: 17.2.2005 Где: г. Мурманск, Росс ия Репутация: 2 Всего: 3 |
У этого AdvStringGrid'a есть свойство Look. Если Look:=glXp или Look:=glTMS то на фиксированных строка и колонках появляется неплохой градиент, но его цвет зависит от стиля в винде.
Оказыватся, цвет градиента можно сделать любым при помощи изменения свойств TMSGradientFrom и TMSGradientTo, но эти свойства не доступны в Инспекторе Объектов, поэтому пришлось долго их искать. --------------------
Компьютер не подчиняется законам физики. Только в нём глюки возникают из ничего, файлы исчезают в никуда, а объём измеряется в метрах и называется весом. |
|||
|
||||
Akella |
|
||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Работаем с TCheckBox
procedure AddCheckBox(ACol, ARow: Integer; State, Data: Boolean); что есть Data я так и не понял, но понял, что если ставить в False, то при сохранении эта ячека игнорируется. Еще одно замечание относительно EditorType. В событии OnGetEditorType не нужно определять ячейки типа edCheckBox (TEditorType.) читаем файл, ранее сохраненный od1 - TOpenDialog asg1 - сама сетка bCellCecked - переменная типа boolean
добавлее строки
Это сообщение отредактировал(а) dsergey - 21.2.2005, 15:41 |
||||
|
|||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Почему то событие OnGetEditorType происходит дважды подряд
|
|||
|
||||
Akella |
|
||||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Пример.
в строке несколько ячеек имеют ComboBox, кадый ComboBox заполняется в зависимости от того, что юзер выбрал в ComboBox`е предыдущей ячейки. Но если все ComboBox`ы заполнены, а юзер опять начал выбирать данные в той же строке, то после выбора значения первого ComboBox`а остальные нужно очистить. Но очисть в том случае, если юзер выбрал новое значение в ComboBox`е. Есть 2 события ComboCloseUp и ComboOnChange. К сожалению ComboOnChange наступает позже, т.е. после закрытия ComboBox`а. Нам нужно до закрытия, т.к. после закрытия мы уже дожны знать, изменилось значание в ComboBox`е или нет. Как отследить? Вводим глобальную переменную
В событии OnClockCell пишем (запоминаем старый текст)
В событии OnComboCloseUp
|
||||||
|
|||||||
Akella |
|
||||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Глюк:
Почему? А может и я не прав. Итак загружаем в сетку данные, затем удаляем одну строку загружаем новые данные, получается последние строки не отрисовывает, мало того вылетает исключение. Как решить проблему?
Это сообщение отредактировал(а) dsergey - 2.6.2005, 11:17 |
||||||
|
|||||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
ОШИБКА ИМЕННО В ЭТОЙ ПРОСЕДУРЕ
|
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Решил проблему следующим кодом
|
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
неужели никто не на работал с эти пакетом?
|
|||
|
||||
avp |
|
||||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 21.7.2006 Репутация: нет Всего: нет |
Привет!
несколько примеров для advStringGrid
Замечание при работе с Nodes - пред закрытием программы, для исключения Invalid Pointer Operation / AViolation их необходимо удалить, например в событии OnClose формы -
|
||||
|
|||||
kostas |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 100 Регистрация: 21.7.2006 Репутация: 3 Всего: 4 |
Я тоже работал вплотную с этими компонентами.. Очень понравились, приятный вид и большой функционал.. Что же касается триальности, то пишите в личку ;)
|
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
kostas, лучше примеры выкладывай, куски кода, что можно, что нельзя...
|
|||
|
||||
Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 26 Всего: 108 |
работал... но такого компанента я у себя в пакете не нашёл... у тебя он на какой закладке? как-то задавал вопрос по VrScope... никто ничего по нему не сказал... пришлось самому разбираться... -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
Foley |
|
|||
![]() Фсемба Яцца ![]() Профиль Группа: Участник Сообщений: 235 Регистрация: 31.1.2006 Где: Россия, Арх.обл Репутация: 2 Всего: 7 |
я работал, но нормальных примеров у меня к сожалению нету, я пробовал разобраться в демках, кое что получилось, кое что нет, но от противной надписи о том что она триальная мне пришлось пострадать... (отказаться, дальенейшее изучение я посчитал бессмысленным... ибо небыло средств оплатить компанент...) |
|||
|
||||
kostas |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 100 Регистрация: 21.7.2006 Репутация: 3 Всего: 4 |
||||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
ну так выкладывай
|
|||
|
||||
kostas |
|
||||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 100 Регистрация: 21.7.2006 Репутация: 3 Всего: 4 |
Ниже процедурки, которые когда-то писал сам... есть еще много примеров по работе в общем с гридами, однако они есть в том же drkb и смысла здесь их приводить я не вижу..
Вот пример экспорта грида в html:
сортировка по любой колонке:
раскраска последней ячейки последнего столбца в красный цвет и выравнивание во всех других ячейках по правому краю:
и еще в аттаче небольшой примерчик по работе с TStringGrid, для кого то делал когда то Присоединённый файл ( Кол-во скачиваний: 24 ) ![]() |
||||||
|
|||||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
на сайте разработчиков пакета FIBPlus (http://www.devrace.com/) выложен пример
см. новости за 25.07.2006 Добавлено @ 11:52 http://www.devrace.com/files/tmsadvgrid_2....ibplus_6.45.exe |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
||||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
примеры2
Добавлено @ 10:08 думаю, что ты не найдёшь описания или справки для TMS Присоединённый файл ( Кол-во скачиваний: 44 ) ![]() |
|||
|
||||
tigger |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 456 Регистрация: 30.4.2005 Репутация: нет Всего: 4 |
AdvStringGrid выолжите хоть где-нибудь посмотреть бы его...
|
|||
|
||||
RA |
|
|||
![]() Брутальный буратина ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3497 Регистрация: 31.3.2002 Где: Лес Репутация: 14 Всего: 115 |
tigger, иди на офф сайт там смотри, или качай с ru-board.com, у нас варез запрещён. |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
||||
|
||||
PriZraK |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 22.10.2006 Репутация: нет Всего: нет |
Здравствуйте.
Ищу сорцы данного демо-приложения: ![]() Среди демо-приложений архива DASGDemos.zip этот пример не нашёл. Дело в том что необходимо отразить сообщение (Hint) над определённой строкой, либо в виде баллона (Balloon), либо в виде прямоугольного сообщения (OfficeHint). Так как среди значений компонента TAdvStringGrid есть такие как:
Остаётся задать вопрос — как это сделать? Это сообщение отредактировал(а) PriZraK - 1.6.2009, 23:18 |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Может проблема в том, что на изображении в примере более новая версия грида, чет у тебя в наличии или в примере?
|
|||
|
||||
PriZraK |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 22.10.2006 Репутация: нет Всего: нет |
Установлен TMS Component pack v5.1.0.2 (Май 6, 2009). Версия входящего в пак TAdvStringGrid — 4.5.0.2. |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
||||
|
||||
ActioN |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 12.4.2005 Репутация: нет Всего: нет |
А кто-нибудь знает, как сделать чтобы в определенной колонке всегда был виден SpinEdit (UpDown) контрол - как на картинке, предложенной PriZraK в колонке Stock? Если делать вот так:
То контрол будет виден только если начать редактировать ячейку. После редактирования его снова не видно. |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Может поискать свойство типа AlwaysShowEditor или что-то в этом роде.
|
|||
|
||||
ActioN |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 12.4.2005 Репутация: нет Всего: нет |
Akella, перепробовал все возможные свойства, которые в названии хоть как-то имеют отношение - не нашел. Слишком их много. Демки тоже пересмотрел и тоже ничего такого не нашел. Ни в одной демке не нашел создания SpinEdit в ячейке.
|
|||
|
||||
Dizzzy Dozzzer |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 15.5.2008 Репутация: нет Всего: нет |
grid.ControlLook.SpinButtonsAlwaysVisible := true Добавлено через 11 минут и 29 секунд
procedure AddBalloon(ACol,ARow: Integer; Title, Text:string; Icon: TBalloonIcon); Варианты Icon: biNone: no icon biInfo: information icon biWarning: warning icon biError: error icon ЗЫ не забудь: grid.Balloon.Enable := true |
||||||
|
|||||||
Slan |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 29.3.2010 Репутация: нет Всего: нет |
Дабы оживить тему... Сталкивался кто с реализацией создания в ячейках TMSGrid'ов элементов CheckComboBox стандартными средствами TMS? Вроде для этих целей есть компонента CheckEditLink, но как с ней работать пока не понятно. Заранее благодарен Это сообщение отредактировал(а) Slan - 6.5.2010, 11:46 |
|||
|
||||
Slan |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 29.3.2010 Репутация: нет Всего: нет |
И весьма интересно: а есть ли возможность сделать такой же фильтр как был в примере, который показывал PriZraK? Если кто знает способ создания просьба поделиться им) |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
По идее, его "делать" не нужно, он, как бы встроен должен быть. Посмотри свойства грида.
Добавлено через 17 секунд Может у тебя не та версия грида? |
|||
|
||||
Slan |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 29.3.2010 Репутация: нет Всего: нет |
По логике то да и там есть подобие, только вот именно что подобие того на скрине. Да, есть группа свойств, посредством которых можно создать фильтр в popup меню, но не тот) В доках тоже темно и грустно, описывается лишь часть, а остальное - догадывайтесь сами...
Недавно начал осваивать TMS, вот и проявляю интерес к таким неплохим у удобным, на мой взгляд, деталям. Кстати, по первому вопросу тоже нету соображений\предложений? по поводу версии... грид версии 5.0.4.1, сам пак - 5.5.2 |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
||||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |