| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > разный цвет текста в таблице |
| Автор: АСК 27.10.2004, 22:46 |
| Пожалуйста помогите!!!!! Пишу электронный журнал дефектов программа практически готова, но есть проблемы: 1. Не могу сообразить как сделать фильтрацию по нескольким условиям, например: ТАБЛИЦА (номер, дата, фамилия и т.д.) отфильтровать по дате и фамилии???????? 2. Как сделать цвет текста в таблице разный???? например: под номером 1 цвет текста в строке красный под номером 2 цвет текста в строке зеленый 3. При клике на таблицу выделяется одна ячейка активной строки, как сделать, чтобы выделялась вся строка??????? Заранее благодарен за помощь. |
| Автор: p0s0l 27.10.2004, 23:56 | ||
| 1) Пример: Table1.Filter := 'Data1 > ''01.01.2005'' AND Fam = ''Пупкин*'''; 2) На событие OnDrawColumnCell повесь что-то вроде:
3) У DBGrid'а есть свойство Options, там поставь флаг dgRowSelect |
| Автор: Guest 28.10.2004, 00:46 |
| ОГРОМЕННОЕ СПАСИБО ЗА ПОДСКАЗКУ Появился еще один вопрос как сделать чтобы можно было задавать пределы фильтрации по дате например с 01.01.04 по 17.03.04 Заранее спасибо |
| Автор: p0s0l 28.10.2004, 00:50 |
| Table1.Filter := 'Data1 >= ''01.01.04'' AND Data1 <= ''17.03.04'''; |
| Автор: Medved 28.10.2004, 01:45 |
| Я Вам не советую использовать фильтрацию, если Вы реализовываете клиент-серверное приложение. Это связано с разницей методов загрузки в компонентах TTable и TQuery (Надеюсь что Вы используете TQuery для клиент-серверных приложений). Лучше использовать запросы. Это и продуктивней, и самое главное - универсализирует Ваш код. А p0s0lу я посоветую не использовать DataSet.RecNo, опять же по причинет универсализации кодов, Кроме того, это будет работать не на всех БД. |
| Автор: Guest 28.10.2004, 08:59 | ||||||||
выбери какое небуть поле (луще конечно идентификатор таблицы) и если значение четное - зеленныи, нечетное - красныи |
| Автор: Medved 28.10.2004, 12:14 | ||
На первый взгляд то она так, но если учесть что программа является полноценным приложением и будет в дальнейшем развиваться, то это не самое мудрое решение. ИМХО плохой стиль, который в дальнейшем может вызвать путаницу в кодах и нестабильность работы. К она томуже не всегда нормально работает. |
| Автор: Guest 28.10.2004, 14:42 |
| иногда, с целю разгрузки сервера и трафика приходится филтровать локално. а вообше полностю согласен |
| Автор: АСК 29.10.2004, 02:36 |
| Извиняюсь за долгий ответ, были проблемы со связью (МТС в тесте, пришлось за BeeLine'ом идти) Спасибо еще раз за подсказки работает все кроме фильтра фильтруешь либо по дате, либо по фамилии - все работает как только объединяешь оба условия в один фильтр через and - ВСЁЁЁЁ - ошибка (Operator not applicable to this operand type) Уже мозги плавятся!!!!!!!! ГДЕ ОШИБКА???? Никак не пойму ПА-МА-ГИ-ТЕ !!!!!!!!!!!!!!!!!!!!!!!!!!!!! |