Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.01.17;
Скачать: CL | DM;

Вниз

колонки в DB гриде ???   Найти похожие ветки 

 
Slawik   (2001-12-26 11:12) [0]

Подскажите кто сталкивался, как можо организовать несколько колонок в ДБ гриде (может компонент какой есть).
Смысл задачи в том, что есть узкая (2 поля, одно 10 симв, второе 3 симв) таблица, и для наглядности желательно отображать данные не в одну колонку, а внесколько с форматированием каждой строки в зависимости от признака.


 
Turalyon   (2001-12-26 11:27) [1]

Хм.. Правый клик на DBGrid -> Column Editor -> Add New
Поконкретней пожалуйста что тебе надо???? Или может я что не так понял.


 
Фе   (2001-12-26 11:30) [2]

А в чем проблема ?
Число колонок определяется:
- DataSet;
- редактром полей грида;
- редактором полей DataSet;
плюс управление видимостью


 
Slawik   (2001-12-26 11:41) [3]

Спасибо что откликнулись, что то действительно я не очень понятно обьяснился: попытка №2 -
есть набор данных например из 30 записей, мне нужно чтобы в окне выводилсь они следующим образом:
1колонка 2колонка
1 поле 2 поле |1поле 2поле

1 запись |11 --------
2 ------ |12 --------
--//-- | --//--
10 ----- |20 запись

Примерно так, в какойто степени аналог отображения файлов в фаре


 
Turalyon   (2001-12-26 11:48) [4]

Так как ты хочешь по моему никак, по крайней не с DBGrid.


 
Фе   (2001-12-26 11:50) [5]

В две руки (два грида)


 
Slawik   (2001-12-26 11:58) [6]

в два грида конечно интересно, но как отслеживать скролинг и взаимодействие гридов, по идее его нужно оставлять только в последнем (в примере колонка 2)


 
Turalyon   (2001-12-26 13:42) [7]

ИМХО при любом раскладе придется почти все делать ручками.
А с отслеживанием скроллинга проблем нет. Метод AfterScroll на Query или Table (в зависимости от того чем ты пользуешься). Далее если у тебя высота DBGrid-ов фиксированная то и смотри что и куда скролируется, только все равно проблеммы будут с переходом с одного на другой (Grid)...

Можно предложить использовать простой StringGird читать всю информацию из таблицы в память и дальше смотреть как что отображать... но тоже гемороя много...


 
Slawik   (2001-12-28 10:00) [8]

Может есть у кого еще какие-нибуть соображения или мысли?


 
Станислав   (2001-12-28 10:34) [9]

Я думаю лучше всего использовать запрос, а дальше заполнять
StringGrid. Разрисовать его заголовок в OnDataCell и вперед.
Получаешь кол-во строк в наборе и расчитываешь сколько строк и двойных колонок тебе нужно. Быстрота работы зависит от компа и кол-ва строк.


 
Slawik   (2001-12-28 11:14) [10]

StringGrid это хорошо, но я только для примера написал что записи выводятся по 10, на самом деле их может быть переменное количество, в зависимости от высоты.
а по сути если я не ошибаюсь, StringGrid почти такой же грид как и DB в смысле навигации.
неужени нет средств (компонентов) отображения данных в таком виде, таблица будет небольшой около 200 - 300 записей, поэтому загнать её в память проблем не составит.


 
Belov   (2001-12-28 12:01) [11]

Кликни два раза на компоненте (TQuery или TTable)
добавть туда все поля и опиши методы

var
TxtStr: String;

.....

procedue Query1Твое_поле_2.GetText
begin
TxtStr:=Query1Твое_поле_2.AsString;
end;

procedure Query1Твое_поле_1.SetText
begin
Query1Твое_поле_1.AsString:=Query1Твое_поле_1.AsString + TxtStr
end

вроде бы так
попробуй потестируй
точность не гарантирую




Страницы: 1 вся ветка

Текущий архив: 2002.01.17;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.01 c
1-52557
AlexBel
2001-12-28 13:12
2002.01.17
Перемещение фокуса между компонентами


1-52539
Yuri Btr
2001-12-27 17:13
2002.01.17
Размер файла


6-52635
ant_prg
2001-10-23 17:07
2002.01.17
TNMHTTP


4-52691
ZserG
2001-11-18 02:47
2002.01.17
Как вставить инструментальную панель в Explorer?


1-52598
Ross
2001-12-29 19:19
2002.01.17
XP Component