FoxPro Club Главная

Конференция Решения Фотоальбом Сайт М.Дроздова Статьи Файловый архив Книга Visual FoxPro 9.0 Русский Help для Visual FoxPro
Пользователей: 9212
Вход
Petrovich Grid (AKA Grid от Petrovich). Добавлена форма фильтрации по таблице (Shift+F7)

Сортировка, поиск, фильтрация, множественный выбор и т.д. Добавлена форма фильтрации по таблице (Shift+F7). Добавлена возможность вставки CheckBox.


 
Прислал: petrovich   Категория: Интерфейс


Грид - "положи на форму и работай".
Возможности:
1. Сортировать по колонке: F5 / Одинарный щелчок мышкой по заголовку
2. Фильтрация
Форма фильтра по колонке: F6
Быстрый фильтр по колонке: Shift + F6
Фильтр по таблице: Shift + F7
Отмена фильтра по колонке: Ctrl + F6 / Shift + Одинарный щелчок мышкой по заголовку / Щелчок правой кнопкой мышки по заголовку
Отмена всех фильтров: Shift + F10 / Двойной щелчок мышкой по пустой таблице
3. Поиск по колонке: F7 / Двойной щелчок мышкой по заголовку
4. Пометка записей в таблице
Пометить текущую запись: Ins / Shift + стрелка вверх(вниз)
Пометить все записи: F11
Снять пометку со всех записей: F12
4. Переместится на первую запись: Ctrl + Home
5. Переместится на последнюю запись: Ctrl + End
6. Изменить заголовок колонки: Ctrl + щелчок мышкой по заголовку
7. Изменить видимость колонок: Ctrl + F12
8. Изменить порядок колонок: Alt + щелчок мышкой по заголовку
9. Копировать данные в буфер обмена: Ctrl + F5
Grid является визуальным компонентом с переопределенными элементами Header и Column
Для автоматической расскраски грида необходимо установить свойство DefaultColoring в .T.
Для возможности множественного выбора необходимо установить свойство IsMultiselect в .T. Для вставки CheckBox в колонку используется процедура Grid.SetCheckBoxToColumn(oColumn)
 
Сделайте оценку этого решения Плохо Удовлетворительно Так себе Хорошо Отлично Текущая оценка: (4.176) Вложение [120.02]kb
Дополнения пользователей
Petrovich Grid (AKA Grid от Petrovich). Добавлена форма фильтрации по таблице (Shift+F7)
[+][?]
Перминов Игорь
13.07.06 11:17:21

Начал тестировать.
У меня вьюха в которой есть поля:
ORGANIZATION_ID
ORGANIZATION_NAME
Сразу-же возникла ошибка: Дублирование полей в методе CURSORLIKETABLE
Пришлось исправить строку следующим образом:
Пока все работает, тестирую дальше
Перминов Игорь
13.07.06 11:17:39

* Исправление		+ LEFT(TmpArr[lnI,1],LEN(TmpArr
Перминов Игорь
13.07.06 11:19:15

Это модераторам:
Что-то как-то глюковато дополнение вносится и отображается!
Перминов Игорь
13.07.06 11:35:39

Если установить AllowCellSelection = .F., то Ins, F11 не показывает результат множественного выбора.
petrovich
13.07.06 22:22:33

Ok, посмотрю.
petrovich
14.07.06 11:54:10

*Если установить AllowCellSelection ...
Игорь, какую версию используешь?
petrovich
14.07.06 12:13:55

При установке AllowCellSelection = .F. управление не передается EditBox в колонке, на котором
навешены обработчики событий.
Перминов Игорь
17.07.06 06:43:08

Тестирую на VFP 9 SP1.
Не пробовал обработчик события множественного выбора вынести в GRID, а не в EditBox.
petrovich
17.07.06 09:49:46

Я на 6-ке. Там AllowCellSelection еще не придумали. 
Посмотрю.
petrovich
17.07.06 10:23:38

Я на 6-ке. Там AllowCellSelection еще не придумали. 
Посмотрю.
Honey
21.10.06 16:00:48

Добрый день. 
Очень полезная вещь у Вас получилась... Честно говоря пока не знаю, как она в использовании, но
вот поучиться на ней есть чему! Спасибо.
А не просвятите новичка? :)
Хочу увидеть содержимое класса ccolumn или cheader. Можно это как-нибудь сделать? 
Как вы его вообще определили? Я делаю отдельный визуальный класс "Grid". а к нему с помощью
свойства MemberClass прикрепляю библиотеку с Column, header, text. А класс определен в class.prg.
А как его засунуть в проекте в Class Libraries? Их можно как то "визуально" определять?
Спасибо.
petrovich
22.10.06 10:56:17

Хороша она в использовании. Использую c 2003 года в той или иной редакции. Чтобы увидеть
содержимое классов ccolumn или cheader необходимо открыть vcx как dbf и в колонке, где указывается
базовый класс проставить соответственно container и label. Скоро выложу версию грида, который
переопределяет события ccolumn и cheader, так что необходимость смотреть отпадет.
Rustem
26.10.06 13:37:56

Будет ли работать ComboBox вставленый в столбец Gridа? Попробовал у меня не получилось,может нужны
какие-то настройки.
Rustem
26.10.06 13:40:28

Будет ли работать ComboBox вставленый в столбец Gridа? Попробовал у меня не получилось,может нужны
какие-то настройки.
petrovich
26.10.06 16:22:10

Пока только textbox
YuriB
01.11.06 15:36:42

На классе в столбце text не работает обработчик событий. Т.е. хочу по нажатии левой кнопки мыши
поменять значение поля. Т.е. Событие Click не отрабатывает
petrovich
01.11.06 16:10:16

В классе grid добавлено событие TextBoxClick(toTextBox)
st0rm197
07.12.06 12:49:33

To Перминов Игорь
13.07.06 11:17:39 	

* Исправление		+ LEFT(TmpArr[lnI,1],LEN(TmpArr

А можно по подробнее, такая же фигня пишет синтакс ерор
triaire
30.01.07 18:34:19

Интерфейс позволяет менять порядок, ширину, заголовки колонок. Но эти изменения ведь не
сохраняется в файл, правильно? При выходе из формы они исчезнут?
petrovich
30.01.07 20:34:21

Правильно. Но ты можешь получить настройки таблицы при помощи
lcSomeCursor = grid.Get_Tune_Table() и сохранять их уже как тебе необходимо.
triaire
31.01.07 11:42:43

Интерфейс позволяет менять порядок, ширину, заголовки колонок. Но эти изменения ведь не
сохраняется в файл, правильно? При выходе из формы они исчезнут?
triaire
31.01.07 17:17:30

"Но ты можешь получить настройки таблицы при помощи
lcSomeCursor = grid.Get_Tune_Table() и сохранять их уже как тебе необходимо."

Ясно, спасибо.
А нет метода, который наоборот - загружает настройки из курсора?

И вопрос/предложение.
Я не сильно копал, возможно тут есть подводные камни, но я в методе cursorliketable заменил текст:
"CrString = 'create cursor '+lcrTarget+' ( '
FOR lnI = 1 TO lnFCount
	CrString = CrString ;
		+ LEFT(TmpArr[lnI,1],Len(TmpArr[lnI,1])) ; &&10 
		+ ' ' ;
		+ TmpArr[lnI, 2] ;
		+ ' (' ;
		+ ALLTRIM(STR(TmpArr[lnI, 3])) ;
		+ ',' ;
		+ ALLTRIM(STR(TmpArr[lnI, 4])) ;
		+ ') NULL '
	CrString = CrString+', '
ENDFOR
CrString = LEFT(ALLTRIM(CrString),LEN(ALLTRIM(CrString))-1)+')'
&CrString"

на:
"FOR lnI = 1 TO lnFCount
	TmpArr[lnI, 17] = 0
	TmpArr[lnI, 18] = 0
ENDFOR

CREATE CURSOR &lcrTarget FROM ARRAY TmpArr"

Такой вариант не вызывает ошибки при работе с полями любого типа, все свойства полей сохраняются.
Обнуление элементов 17 и 18 необходимо для превращения автоинкрементного integer в integer.


petrovich
31.01.07 17:53:21

Лучше так, а то в 6-ке AFIELDS - 16 параметров на поле.
"IF ALEN('tmpArr')/lnFCount >= 18
   FOR lnI = 1 TO lnFCount
	TmpArr[lnI, 17] = 0
	TmpArr[lnI, 18] = 0
   ENDFOR
 ENDIF".

Есть такая. grid.grid_tune(crRecordSource, crTunes)
triaire
31.01.07 18:20:36

"Но ты можешь получить настройки таблицы при помощи
lcSomeCursor = grid.Get_Tune_Table() и сохранять их уже как тебе необходимо."

Ясно, спасибо.
А нет метода, который наоборот - загружает настройки из курсора?

И вопрос/предложение.
Я не сильно копал, возможно тут есть подводные камни, но я в методе cursorliketable заменил текст:
"CrString = 'create cursor '+lcrTarget+' ( '
FOR lnI = 1 TO lnFCount
	CrString = CrString ;
		+ LEFT(TmpArr[lnI,1],Len(TmpArr[lnI,1])) ; &&10 
		+ ' ' ;
		+ TmpArr[lnI, 2] ;
		+ ' (' ;
		+ ALLTRIM(STR(TmpArr[lnI, 3])) ;
		+ ',' ;
		+ ALLTRIM(STR(TmpArr[lnI, 4])) ;
		+ ') NULL '
	CrString = CrString+', '
ENDFOR
CrString = LEFT(ALLTRIM(CrString),LEN(ALLTRIM(CrString))-1)+')'
&CrString"

на:
"FOR lnI = 1 TO lnFCount
	TmpArr[lnI, 17] = 0
	TmpArr[lnI, 18] = 0
ENDFOR

CREATE CURSOR &lcrTarget FROM ARRAY TmpArr"

Такой вариант не вызывает ошибки при работе с полями любого типа, все свойства полей сохраняются.
Обнуление элементов 17 и 18 необходимо для превращения автоинкрементного integer в integer.


triaire
01.02.07 10:26:32

Что-то я не смог grid_tune заставить работать. В параметр  crRecordSource нужно дублировать
RecordSource грида? Если да, то возникает ошибка, если оставлять его пустым - просто не работает.
triaire
01.02.07 11:52:35

Кое-что подправил - заработало.
Но вот "Изменить видимость колонок: Ctrl + F12" - вот это у меня однозначно не работает (VFP-8).
petrovich
05.02.07 16:34:43

"Видимость" перерабатываю. Вскоре выложу новую версию.
triaire
06.02.07 10:55:15

Спасибо.
gangsta
08.02.07 12:35:22

Спасибо БОЛЬШОЕ, отличная штука!
Только есть пара вопросов, как у начинающего:
1) При DblClick на заголовке открывается форма поиска. Но при этом 2 раза делается сортировка (ри
каждом нажатии - по возрастанию, а потом по убыванию)... В случае, если в таблице будет очень
много записей  - это может вызвать тормоза. Как сделать, чтобы грид понимал, что это именно
двойной щелчек и не делал сортировку?
2) В каких методах прписывать выделение ячейки? Я хочу сделать выделене по Ctrl+click и
Shift+click, как в виндовс.
3) Можно ли в header'ы вставлять картинки, и если да, то как? (допустим, картинка, показывающая
порядок сортировки).
Извиняюсь за такое кольчество вопросов... просто хочу детально разобраться :)
petrovich
08.02.07 13:44:15

1. Перед 2-м кликом вызывается сообщение Click на header. Если  кто подскажет, как победить - буду
рад.
2. Выделение ячейки - это как?
3. Нет.
gangsta
08.02.07 14:42:55

2) Выделение или потметка записей в гриде происходит нажатием ins... А я хочу сделать, чтобы было
как в windows - взять хотя бы ярлыки - я щелкнул на один, зажал ctrl, щелкнул на другой - выделено
уже 2 ярлыка, и т.д. Так же и shift - для выделения диапазона (в данном случае, записей)...
Кстати, подскажите, как можно узнать, какие строки выделены в данный момент (с помощью insert)?
petrovich
08.02.07 16:58:41

Ага... Хорошая идея... Подумаю на досуге.
Отмеченные записи помещаются в курсор grid.cr_selectedrecords
petrovich
08.02.07 17:34:33

Ага... Хорошая идея... Подумаю на досуге.
Отмеченные записи помещаются в курсор grid.cr_selectedrecords
petrovich
10.02.07 15:25:50

Залил обновление.
To triaire: 
1. оставил пока без create from array
2. сделал видимость по ctrl-f11.
Теперь имеется возможность самому задавать горячие клавиши (отличные от установленных по
умолчанию). В таблице есть свойства .n*key
To gangsta:
1. Сделал отметку по Ctrl+Click
triaire
12.02.07 12:55:42

Еще пара вопросов:
1. grid не реагирует на значение свойства readonly - по-любому всё редактируется;
2. могу ли я создать обработку двойного щелчка по ячейке, нажатия клавиши enter в ячейке?
petrovich
12.02.07 14:24:49

1. Только что проверил - работает (6.0) Проверял на таблице.
2. Добавил свойство bReplaceColorInTextbox. Если .T. - то цвета ячейки соответствуют цветам
раскраски таблицы, иначе - "синий квадратик с белым шрифтом"
petrovich
12.02.07 15:10:36

Забыл. Нажатия клавиши Еnter в ячейке и двойного щелчка обрабатываются в событии
grid.OnAction(toTextbox)
triaire
12.02.07 18:04:04

Спасибо!
Забыл про еще один вопрос: help по F2 - наверное какого-то файла не хватает?
gangsta
13.02.07 16:21:32

Спасибо огромное! По поводу вызова поиска двойным щелчком мыши... Наверное при первом HeaderClick
нужно запускать таймер и считать, прошло ли время, равное _DBLCLICK. Если время прошло и второго
щелчка не последовало - значит можно сортировать, иначе - вызывать поиск. Это на первый взгляд
немного затормозит сортировку, но зато не прийдется дважды сортировать все записи в курсоре...
Блин, только вот честно - не знаю, где нужно это программировать. Новичек :) 
petrovich
16.02.07 10:41:53

To triaire: изменил на F1.
To gangsta: ок, посмотрю.
petrovich
16.02.07 11:34:27

To gangsta: сделал, как ты предлагал
triaire
28.02.07 13:04:20

Похоже, что видимость/невидимость колонок сохранить штатными методами грида нельзя, установка
действует только в течении сеанса работы формы?
Всё остальное сохраняю успешно.
petrovich
01.03.07 10:05:33

Это нужно либо в ини либо в реестр писать (для каждого пользователя может быть своя настройка
грида). Пока не реализовано.
triaire
01.03.07 10:26:51

А нельзя ограничиться свойством объекта, где был бы прописан путь к dbf c настройками? Тогда,
кстати, не придется и сохранение/загрузку настроек в/из dbf самому писать (хоть это и не сложно).
Можно, наверное, сделать примерно как в классе _forminit - там если ничего не вводить, то
образуется файл с именем по-умолчанию в текущей директории.
gangsta
01.03.07 13:01:52

petrovich, спасибо за то что ты делаешь! Это помогает очень многим людям...
по поводу сортировки и вызова поиска: если колонка не отсортирована еще по возрастанию - вызов
поиска по DblClick происходит нормально. По Click происходит сортировка. Но если сортировка по
колонке уже установлена - то при DblClick сначала происходит сортировка по убыванию, а только
потом открывается окно поиска... Вот :)
petrovich
02.03.07 13:56:23

To triaire: ок, сделаю
To gangsta: при вызове поиска происходит сортировка по возрастанию. В принципе можно сделать
настройку - "нужно ли сортировать в процессе поиска"
petrovich
02.03.07 14:25:09

To gangsta: добавил свойство grid.SortBeforeSearch (по умолчанию - .T.)
petrovich
04.03.07 17:23:05

To triaire: добавлено свойство cSettingsFile и методы: SaveSettingsToFile([tcFile]) и
LoadSettingsFromFile([tcFile]).
Если параметр tcFile не передается, то используется свойство cSettingsFile. Перед использованием
функции LoadSettingsFromFile у таблицы должен быть установлен RecordSource.
petrovich
05.03.07 10:42:16

По аналогии добавил функции SaveSettingsToIni([tcFile]),
LoadSettingsFromIni([tcFile]) и свойство cIniFile
petrovich
05.03.07 12:22:08

Изменены имена функций:  SaveSettingsToFile([tcFile]) - > SaveSettingsToDbf([tcFile]) и
LoadSettingsFromFile([tcFile]) - > LoadSettingsFromDbf([tcFile])
gangsta
09.03.07 17:13:28

И еще один вопрос:
допустим, я делаю фильтрацию по колонке. Как узнать, какие записи отфильтрованы, а какие нет? И
отсюда другой вопрос - как установить фильтр вручную на определенный диапазон записей?
petrovich
11.03.07 13:28:26

1. Фильтр накладывается обычным Set Filter To ... соответвственно какие записи отфильтрованы, а
какие нет можно определить средствами FoxPro
2. Для установки фильтра в ручную используется свойство grid.PrimFilter. Например grid.PrimFilter
= "Type = 1"
gangsta
13.03.07 14:22:26

Спасибо!
И еще :) Форма cutils вызывается нажатием кнопки в "левом верхнем углу таблицы"... Что это за
кнопка такая? Если это кнопка над RecordMark'ом цгрида - то вызов формы утилит не работает...
petrovich
13.03.07 16:11:51

Да, над марком. Делал года полтора назад, но иногда вываливалась C05, и я ее убрал. Она реализует
операции "сброс фильтров", "копировать записи в буфер", "выделение/ снятие выделения со всех
записей", "получение настроечной таблицы". Это все легко выполняется по нажатию клавиш, так что
отсутствие этой формы не особо заметно, точнее вообще не заметно.
RiV
15.06.07 15:26:18

здравствуйте!!! Хочу поблагодарить автора этого грида! Очень крутая вещь, я диплом лелаю, там ее
применил...
Такие вопросы - когда запускаю скомпелированный экзешник, все окна которые вызываются из грида
автоматически скрываются...
В проекте все работает идеально!

Еще хотел бы сделать чтобы все поля у которых dolg больше 1000000 становились красными....где
прописать код

"IF RECNO()#0	
	This.SetAll("DynamicBackColor",;
"IIF(RECNO()#nr8, RGB(255,255,255),RGB(232,232,232))","column")
endif"

Еще выше написанно что как-то можно организовать сохранение всех параметров пользователя, размер
колонок, очередность.....но я так и не понял что для этого делать?
petrovich
15.06.07 22:45:44

to RiV
Спасибо за хорошие слова. 
По поводу расскраски окон - нужно смотреть на тип окна (As top level и т.д.) у вызываемых окон и с
ними поиграться.
По поводу раскраски - необходимо установить DefaultColoring в .F. и прописать твой код как и в
случае с обычной таблицей, только замени "column") на "ccolumn"), потому что там класс колонки
другой.
Для сохранения настроек используй функции:
SaveSettingsToIni([tcFile]) и LoadSettingsFromIni([tcFile]) 
или
SaveSettingsToDbf([tcFile]) и LoadSettingsFromDbf([tcFile])

petrovich
15.06.07 22:46:33

Конечно, не "расскраски" окон, а всплывающих окон.
RiV
16.06.07 19:10:26

здравствуйте!!! Хочу поблагодарить автора этого грида! Очень крутая вещь, я диплом лелаю, там ее
применил...
Такие вопросы - когда запускаю скомпелированный экзешник, все окна которые вызываются из грида
автоматически скрываются...
В проекте все работает идеально!

Еще хотел бы сделать чтобы все поля у которых dolg больше 1000000 становились красными....где
прописать код

"IF RECNO()#0	
	This.SetAll("DynamicBackColor",;
"IIF(RECNO()#nr8, RGB(255,255,255),RGB(232,232,232))","column")
endif"

Еще выше написанно что как-то можно организовать сохранение всех параметров пользователя, размер
колонок, очередность.....но я так и не понял что для этого делать?
alexandr_f
26.06.07 13:38:33

Спасибо за решение Как выделить несколько записей я нашел , а как сделать фильтр по ним (чтобы
только выделеные) не нашел. Может там есть метод ?
alexandr_f
26.06.07 13:50:44

Спасибо за решение Как выделить несколько записей я нашел , а как сделать фильтр по ним (чтобы
только выделеные) не нашел. Может там есть метод ?
petrovich
26.06.07 14:52:19

Метода "показать только выделенные" нет. Записи помещаются в курсор grid.cr_SelectedRecords
yuribut
02.08.07 09:05:41

в столбце text хочу по нажатию правой кнопки мыши
хочу вызывать свою процедуру. Как я понял, событие TextBoxClick(toTextBox) обрабатывает только
нажатие левой кнопки. Как быть?



yuribut
02.08.07 11:54:45

Спасибо, вопрос снимается. Использую событие TextBoxMouseDown. И анализирую параметр tnButton

petrovich
02.08.07 20:10:03

Всегда рад помочь :)
Vovan07
03.08.07 15:40:21

Спасибо за Вашу работу!
Вопросы
1.У меня поля с форматом Date отображаются не так, как установлено в программе(у меня German,
sentury=on, а показывает в формате American,sentury=off). Можно ли менять такие настройки?
2.Тоже с отображением полей datetime (время в 12-ти часовом формате).
3. Не могу сменить размер шрифта в заголовках.
Vovan07
03.08.07 15:47:11

Спасибо за Вашу работу!
Вопросы
1.У меня поля с форматом Date отображаются не так, как установлено в программе(у меня German,
sentury=on, а показывает в формате American,sentury=off). Можно ли менять такие настройки?
2.Тоже с отображением полей datetime (время в 12-ти часовом формате).
3. Не могу сменить размер шрифта в заголовках.
petrovich
03.08.07 16:07:42

1. Грид использует настройки, которые установлены у Вас в программе. Никаких настроек он не
изменяет.
2. Аналогично.
3. Посмотрю.
Vovan07
03.08.07 16:20:08

Спасибо за Вашу работу!
Вопросы
1.У меня поля с форматом Date отображаются не так, как установлено в программе(у меня German,
sentury=on, а показывает в формате American,sentury=off). Можно ли менять такие настройки?
2.Тоже с отображением полей datetime (время в 12-ти часовом формате).
3. Не могу сменить размер шрифта в заголовках.
Vovan07
06.08.07 09:32:50

Спасибо за Вашу работу!
Вопросы
1.У меня поля с форматом Date отображаются не так, как установлено в программе(у меня German,
sentury=on, а показывает в формате American,sentury=off). Можно ли менять такие настройки?
2.Тоже с отображением полей datetime (время в 12-ти часовом формате).
3. Не могу сменить размер шрифта в заголовках.
petrovich
06.08.07 12:12:50

Vovan07, спасибо на одинаково добрых словах
"Vovan07 от 03.08.07 15:40:21",
"Vovan07 от 03.08.07 15:47:11",
"Vovan07 от 03.08.07 16:20:08" и
"Vovan07 от 06.08.07 09:32:50".
Смотри ответ "petrovich 03.08.07 16:07:42".

BSnake
10.09.07 18:47:45

Огромное Спасибо за вашу работу, очень хороший грид!
У меня есть вопросы.
1.После сохранения настроек грида через SaveSettingsToIni или SaveSettingsToDbf и последующее
восстановление меняется наименование полей на Colunm1 ... и т.д. как решить вопрос по поводу
передачи фокуса в конкретное поле, ведь после сортировки название полей изменяется.
2. не работает функция Enable для полей

P.S. FoxPro 9.0
petrovich
12.09.07 14:29:51

Пожалуйста.
1. В конкретную колонку? Процедура запоминает активную колонку и восстанавливает фокус при
загрузке. "... после сортировки название полей изменяется." - это как?
2. "не работает функция Enable для полей" - в чем это проявляется?
Gray
21.09.07 00:38:08

Очень хороший Grid  и СПАСИБО.
Мне в Grid-e нужно отображать только отдельные записи (отбор ведется по специально созданному полю
- "код города"). Но выдаются все записи. Пробовал SET FILTER, или FILTER в свойствах. Нужного
результата нет.
Собственно вопрос: Как заставить Grid отображать только нужные записи?
petrovich
21.09.07 12:28:16

У грида есть свойство "PrimFilter".
Myhailo
04.12.07 19:57:33

ОГРОМНОЕ СПАСИБО. ДАЙ БОГ ВАМ ВСЕГО ХОРОШЕГО. Вот обрадуются пользователи.
Myhailo
04.12.07 20:00:14

ОГРОМНОЕ СПАСИБО. ДАЙ БОГ ВАМ ВСЕГО ХОРОШЕГО. Вот обрадуются пользователи.
petrovich
05.12.07 09:56:32

To Myhailo.
С Божьей помощью все возможно.
Спасибо.
sphinx
18.12.07 08:59:48

Мои отзывы/пожелания. В целом очень хороший, функциональный продукт, основное достоинство (помимо
функционала!) - положи на форму и работай. Для дальнейшего развития вношу свои 5 копеек ;)

1. После сортировки (по F7) в FILTER_CLEAR выскакивает ошибка "COLUMNS не является объектом"
(стр.3)

2. Не удалось наложить свой фильтр (видимо, он сбрасывается методом Filter_Reset). Про свойство
PrimFilter знаю, но как им пользоваться?

3. Как вызвать форму фильтрации по таблице?

4. Как воспользоваться инкрементным поиском (после предварительной сортировки), т.е. поиск по
первым буквам.

5. Планируете ли Вы подключение к гриду подвала с итогами (по аналогии с GridFooter.vcx) 

С уважением, Александр.
sphinx
19.12.07 08:54:59

п.2 снят 
petrovich
25.12.07 17:54:20

1. Не смог инициировать ошибку.
2. Ок
3. Shift+F7
4. F7 - поиск. По первым буквам - при помощи стандартных символов *, ?
5. Пока не планировал. Будет свободное время - посмотрю.
crash_lexx
22.07.08 10:30:17

с качал только что класс, проверил при компиляции проекта выдаёт:
Visual Class Library cgrid.vcx has the following errors:
    File CONSTR.BMP - Undefined

в папке img его не нашёл
где можно взять и для чего он нужен?
crash_lexx
22.07.08 10:53:28

в проекте при попытке Изменить видимость колонок: Ctrl + F12
выдаёт сообщение: "элемент управления доступен только для чтения"
что нужно поставить чтоб не только для чтения?
ps параметр IsMultiselect стоит в .T.
crash_lexx
14.08.08 11:54:48

все свои вопросы снимаю, разобрался, но возник новый:
как бороться с отображением полей формата memo?

petrovich
15.08.08 17:02:00

Молодец. 
Переводить в строку соответствующими функциями и отображать.
crash_lexx
18.09.08 11:51:43

не нашёл где именно надо прописать в классе, чтобы происходило преобразование типа поля мемо в
чар, и отображалось не надпись мемо, а значение этого поля, так же не нашёл где и что нужно
установить в свойствах, чтоб указывать какие поля отображать с чекбоксами.
[Дополнить]



© 2000-2017 Fox Club 
При размещении любых материалов с сайта на других ресурсах- прямая ссылка на www.foxclub.ru обязательна
Яндекс.Метрика