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

Вниз

Как бы сделать auto-size колонок в DBGrid(Eh)?   Найти похожие ветки 

 
BlackTiger   (2003-01-08 20:48) [0]

Как бы сделать subj?

Чтобы ширина колонки была равна длине самого длинного значения поля?
Где находится момент заполнения ячейки колонки? В DBGridEh перепробовал вроде уже все события - никакого результата.


 
Игорь Шевченко ©   (2003-01-09 11:17) [1]

Пройти по Dataset, выбрать самое длинное значение поля, определить его ширину в пикселах для шрифта грида (или конкретной колонки), установить для колонки эту ширину - и вуаля!


 
ЮЮ ©   (2003-01-10 04:39) [2]

>Где находится момент заполнения ячейки колонки? В DBGridEh перепробовал вроде уже все события - никакого результата.

Они не заполняются, а только отрисовываются в DrawCell, при этом вызывается onDrawCell, где можно проанализировать текушую ширину колонки и необходимую, при этом, правда, ширина столбцов будет меняться при при скроллинге. Чтобы это избежать, прийдется последовать совету Игорь Шевченко © (09.01.03 11:17)


 
Sergey13 ©   (2003-01-10 09:38) [3]

2BlackTiger (08.01.03 20:48)
>Как бы сделать Чтобы ширина колонки была равна длине самого длинного значения поля?
ИМХО, это неправильный путь. Хотя я тоже вроде читал в описании EhLib про такую штуку, но не пробовал. Дело в том, что в этом случае ты получаешь непредсказуемый интерфейс. А это не есть хорошо. Представь - средняя длина поля 10 знаков, а в одной записи 200. Получишь "пустую" сетку.
Тем более, что в Eh для того же самого есть другие (лучшие ИМХО) прибамбасы. Например показ "неумещающегося" поля как хинта, или показ рЕкорда в несколько строк. Причем "толщину" строки можно менять мышкой в рантайме.
Кроме того "длинные" поля лучше вообще в грид не ставить(ИМХО), а показывать рядом, в Мемо каком нибудь.


 
BlackTiger   (2003-01-10 11:58) [4]

Ну почему всех лебом не корми - дай всё усложнить?!

Представь - средняя длина поля 10 знаков, а в одной записи 200. Получишь "пустую" сетку.

Для такой ситуации можно наложить ограничение на максимальную авто-ширину столбца, или не использовать auto-size для определенных колонок. Вариантов масса!

Да и вообще - все проще пареной репы.


 
Johnmen ©   (2003-01-10 12:19) [5]

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


 
Наталия ©   (2003-01-10 12:34) [6]

Вот, нашла:
-----------------------------------------------------------------
BlackTiger (31.12.02 03:34)


В который раз убеждаюсь, что русские программеры вырождаются!
Вы даже техзадание читать не умеете и искать подход к решению проблем. "Уметь программировать" <> "уметь разрабатывать".

Неееее, господа, в следующий раз я ОЧЧЧЧ глубоко подумаю, прежде чем искать совета тут. Особенно, когда такой флейм разводят по поводу пустяковой проблемы.

Я нашел очень красивое и простое решение без "заумностей", "умностей" и прочей ерунды. Вы бы еще предложили использовать распределенные вычисления и веб-сервисы!



 
Alexandr ©   (2003-01-10 12:39) [7]


> Например показ "неумещающегося" поля как хинта,


напомните мне, как это в dbgrideh делают?


 
Johnmen ©   (2003-01-10 12:56) [8]

>Наталия © (10.01.03 12:34)

Точно ! А главное сколько здоровой самокритики в выражении "В который раз убеждаюсь, что русские программеры вырождаются!"



 
MsGuns ©   (2003-01-10 13:18) [9]

В тему:

Читал когда-то у Шишкова (вроде в "Тайге") такой случай:

Была у артельщиков-золотоискателей такая игра. Все сидят за столом, пьют не по-детски, закусывают. Тут вдруг старшой кричит зычным голосом:
- ТИГРА ПРИШЛА !!!
Все торопливо лезут под стол. Кто не успел, того старшой по лбу.
Через пару минут снова зычный глас:
- ТИГРА УШЛА !!!
Из-под стола вылазят огурцы и опять пьют-едят

Через какое-то время опять:
- ТИГРА ПРИШЛА !!!
и все повторяется.

Так происходит много раз, кол-во народа за столом неуклонно уменьшается, т.к. не все залезшие под стол смогли из-под него вылезти.

Выигрывает тот, кто остается за столом вдвоем со старшим.

Мудрая игра, однако !


 
Sergey13 ©   (2003-01-11 09:25) [10]

2Alexandr © (10.01.03 12:39)
>> Например показ "неумещающегося" поля как хинта,
>напомните мне, как это в dbgrideh делают?
На грид ставиш showhint:=true и на нужные (или на все) поля ставь ToolTips:=True и будет тебе счастье.


 
BlackTiger   (2003-01-12 12:47) [11]

:-)

2Johnmen: Будешь тут забавным, блин... Сам себе вопросы задаешь, сам на них отвечаешь...

"Пройтись по датасету" - как решение "здесь и сейчас, а потом хоть потоп" для "супер-базы" в 1000 записей вполне сойдет, а вот при кол-ве записей в 4,5,6 нулей? Я обрабатываю данных в сотни тысяч и миллионы записей (аналитика крупной конторы). Тут даже Excel ничем помочь не может со своим убогим Pivot"ом. Особенно, когда руководство "не лохи с калькулятором", а тоже люди "близкие" к IT, да к тому же "с фантазией", иногда слишком разыгрывающейся.

2Наталия: Я под своим постом подписался и не отказываюсь от него ("ГЕНИАЛЬНОСТЬ" русских программеров не более чем миф). Очень хотелось бы надеяться, что ошибаюсь, но :(... Иногда общаюсь с молодыми выпускниками/студентами "компУтерных" специальностей (набирают у нас иногда) - ГРУСТНО!!! Амбиций - масса (C рулит, ОпенСорс форева, M$ - отстой, Линух форева ну и тыды), про фразу типа "клиент всегда прав, даже если уже всю печень проел и после него я застрелюсь" понятия не имеют.

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



 
Alexandr ©   (2003-01-12 13:07) [12]

2Sergey13 © спасибо. Уже прикрутил еще одну фичу в программы.

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


 
KSergey ©   (2003-01-13 08:39) [13]

> BlackTiger (12.01.03 12:47)
>
> 2Johnmen: Будешь тут забавным, блин... Сам себе вопросы
> задаешь, сам на них отвечаешь...
>
> "Пройтись по датасету" - как решение "здесь и сейчас, а
> потом хоть потоп" для "супер-базы" в 1000 записей вполне
> сойдет, а вот при кол-ве записей в 4,5,6 нулей? Я обрабатываю
> данных в сотни тысяч и миллионы записей (аналитика крупной

И вот это кол-во записей вы отображаете в гриде?!!! Да еще и потом из грида анализируете?!!!!! Ну-ну ;) А если не так - тогда не понятна эта ваша ремарка.

> Иногда общаюсь с молодыми выпускниками/студентами "компУтерных"
> специальностей (набирают у нас иногда) - ГРУСТНО!!! Амбиций
> - масса (C рулит, ОпенСорс форева, M$ - отстой, Линух форева
> ну и тыды), про фразу типа "клиент всегда прав, даже если
> уже всю печень проел и после него я застрелюсь" понятия
> не имеют.

И что в этом странного? Вы себя вспомните в далекой (видимо?) молодости. Все эти задумывания над последствиями приходят из опыта, либо от старших товарищей. Т.е. опять же с опытом. Так что все нормально. Ну а амбиции - они тоже постипенно оббиваются ;)



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

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

Наверх




Память: 0.51 MB
Время: 0.024 c
14-97033
delta
2003-01-14 09:53
2003.01.30
Вирусы и антивирусы


1-96721
Delph
2003-01-20 11:29
2003.01.30
По зазному вставляются записи в TClientDataSet.


3-96621
leran2002
2003-01-14 10:07
2003.01.30
Запароленный Аксесс


3-96532
qwerty2
2003-01-14 23:46
2003.01.30
Изменить текст в DBLookupComboBox


1-96814
beginer_
2003-01-20 11:01
2003.01.30
Как запустить программу и дождаться её завершения?