Вниз
Скачать: CL | DM;

Tdbgrid   Найти похожие ветки 

 
Гарик   (2002-11-21 15:56) [0]

Здравсвуйте.
У меня несколько вопросов:
1.Как перебрать все ячейки гриды, чтобы написать свой конвертор
в файл (Excel/Word напр.) Проблема в том что перебор через
датасет не дает информации о форматировании ячейки.(фонт, цвет фона).

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


 
Prooksius ©   (2002-11-21 16:12) [1]

Ну наверняка ты раскрашиваешь грид на основании данных из DataSet. Тоже относит. фонта.
Делай так же и с вордом.


 
Гарик   (2002-11-21 16:18) [2]

Да, это так, но хотелось бы дать пользователю редактировать конечный результат форматирования, т.е. кликнул по ячейке правой кнопкой, - выпало меню с пунктами, предоставляющими возможность поменять шрифт, фон конкретной ячейки.


 
Anatoly Podgoretsky ©   (2002-11-21 16:21) [3]

Во всех строках одинаковое форматирование колонок, если да, то информация в свойстве Columns


 
Гарик   (2002-11-21 16:29) [4]

нет, м.б. по-разному.


 
Victor_Cr ©   (2002-11-21 17:50) [5]

Ну для настоящих извращенцев есть такой путь. Создаешь массив, файл, таблицу или еще чего-нибудь, где будешь хранить атрибуты каждой ячейки. И в обработчике OnDrawColumnCell перерисовываешь значения исходя из данного массива. Но тебе придеться создать алгоритм распознавания (в смысле местоположение ячейки в гриде и соответствующей ей записи в массиве, файле, таблице или еще где-нибудь). Возможные варианты - привязка формата ячейки к данным что отображаються в гриде (TQuery, TTable, TStoredProc ...).
Ну дальше думай сам.


 
ЮЮ ©   (2002-11-22 05:04) [6]

TDBGrid для этих целей просто не подойдёт, т.к. у него лишь столько строк, сколько видно на экране, следовательно, "пожелания" пользователей по форматированию ячейки надо будет хранить в БД.
Используй тогда TStringGrid, куда сначала помещаешь рез-ты запроса, а признаки форматирования ячеек можно запихать в Objects


 
Гарик   (2002-11-22 10:28) [7]

2Victor_Cr

> Ну для настоящих извращенцев есть такой путь. Создаешь массив,
> файл, таблицу или еще чего-нибудь, где будешь хранить атрибуты
> каждой ячейки. И в обработчике OnDrawColumnCell перерисовываешь
> значения исходя из данного массива.

SKIP
Как раз вот так не хотелось бы делать, поскольку на это событие у меня форматируются ячейки на основе "признаков датасета".

2ЮЮ
Это самый напрашивающийся путь, и так похоже придется делать :( или убедить пользователей что придется без этого обойтись :)

Спасибо за ответы.
Резюме такое:
1.прочитать формат конкретной ячейки похоже в стандартном
дбгриде нет возможности.
2.То же относится и к установке формата конкретной ячейки.(по крайней мере сделать это очень непросто)



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
1-28006
TTCustomDelphiMaster
2002-11-29 21:18
2002.12.09
Форма - поток, поток - форма. Запутался совсем.


14-28246
vopros
2002-11-18 11:22
2002.12.09
Порадуйте меня чем нибудь.


14-28286
Premium
2002-11-15 20:56
2002.12.09
Я слабый......


6-28174
Геннадий
2002-10-11 20:35
2002.12.09
Как узнать размер странички html (файла на веб-узле)?


1-28120
Runser
2002-11-21 13:25
2002.12.09
использование файла другими пользователями или приложениями




   Наверх