Главная страница
    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.49 MB
Время: 0.009 c
3-96600
Whippi
2003-01-13 15:56
2003.01.30
Что за фигня: Обнаружены символы за пределами инструкций SQL


3-96591
DenisLK
2003-01-13 13:33
2003.01.30
TQuery


3-96552
asf
2003-01-08 23:45
2003.01.30
Decision Cube и запрос SQL


1-96793
alexnmsk
2003-01-22 15:40
2003.01.30
Как сделать dll


3-96622
YurikV
2003-01-14 09:57
2003.01.30
ODBC & Access





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский