|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
DBGrid и DBChart - выбор по галочках
Доброго времени суток! Помогите пожалуйста
1. Как реализовать выбор полей на DBGrid: есть 40+ полей в БД, как сделать так, чтобы в реальном времени пользователь мог выбирать поля для отображения (по типу Combobox, поставил галочку и поле отобразилось)? 2. И впоследствии отобразить данные из выбранных полей на DBTChart (в полях переменные типа Float, набитые числами)? Спасибо! |
#2
|
||||
|
||||
Если речь идёт о столбцах грида, чтоб была возможность включить/выключить их отображение, Вы можете:
1) Воспользоваться компонентами EhLib (компонент TDBGridEh). Там такая возможность реализована (выпадающее меню с возможностью выбора видимых столбцов), ничего даже делать не надо. 2) Написать свой код. Например, у меня в программе для этого сделано отдельное окно. Понадобится отдельная таблица для хранения списка полей, т.к. количество их может быть переменным для разных гридов (если в программе несколько гридов). А видимость задаётся просто, через свойство Код:
MyGrid.Columns[i].Visible А с Chart-ом надо Вам разобраться. Вот, например, в учебнике Фаронова (есть в сети) доступно расписано, как с ним работать. В двух словах не расскажешь, читать надобно! |
#3
|
|||
|
|||
А можете пожалуйста более подробно расписать как реализовать кодом выбор полей в DBGrid?
|
#4
|
|||
|
|||
И вообще было бы идеально, если бы показали где в TDBGridhEh эта функция Установил себе эту библиотеку, но не могу найти это задать.
|
#5
|
||||
|
||||
Непонятно, что конкретно Вам надо - код "от и до"? Тогда мой код Вам не подойдёт. Я примерно объяснил словами, но если этой информации недостаточно - тогда не разберётесь. Я сам сделал это окно и забыл, а теперь если заглянуть - много вопросов возникнет))) Кроме того, я использую грид от EhLib, там своя специфика (т.е. у простого DBGrid-а может не оказаться тех функций, что я использую).
Если приведу весь код - точно не разберётесь, т.к. к нему понадобится куча комментариев. И, повторюсь, без грида от EhLib он работать не будет! Я не знаю, какая у Вас версия Делфи. Почему бы Вам не попробовать EhLib? Есть очень ранняя версия, которая была бесплатной, может она на вашу Делфи станет? В этом случае не надо будет писать никакого кода, нужная Вам функция уже встроена в грид. Кроме того, этот грид обладает суперскими возможностями визуализации - цветные ячейки, отображение картинок в таблице, отображение чекбоксов. Можно перетаскивать, скрывать/отображать столбцы; можно сохранять вид грида в файл и читать при запуске программы. Есть встроенный поиск разных видов, возможность копирования и печати данных из грида, а также экспорта. Поддерживаются многострочные заголовки, щелчки по заголовкам столбцов и установка маркеров сортировки. Функций там очень много, долго перечислять. Оно того стоит! Этот грид имеет все свойства и функции стандартного + целую кучу своих. Вот здесь можете скачать: https://drive.google.com/file/d/1ou1...ew?usp=sharing |
#6
|
||||
|
||||
Подключаете грид к источнику данных, чтоб шло отображение данных. Затем - в левом верхнем углу грида есть изображение треугольника, клацаете по нему, и в выпадающем меню найдёте нужный пункт отображения/скрытия столбцов. Задавать ничего не надо, всё уже сделано!
|
#7
|
|||
|
|||
Посмотрите пожалуйста на скриншот, не могу понять где этот "треугольник".
|