Почему VCL такая дубовая?
От: Writer  
Дата: 08.08.02 05:35
Оценка:
Давно хотел задать этот вопрос, боялся, что запинают. Но все-таки задам. Итак,

Почему VCL такая дубовая?

Я имею в виду как раз то, за что ее так хвалят — быстрое создание удобного пользовательского интерфейса. Вот как раз этого качества я в ней обнаружить не могу, наоборот, сделать что-то совсем простое или практически невозможно или очень сложно. Чтоб было понятно о чем я, скажу, что когда-то писал программки на Access, вот там действительно получается очень удобный и красивый интерфейс (надеюсь, никто не будет мне советовать на него перейти).
Например, такая простая вещь, как переход между контролами через Enter, стрелочки, да, знаю, можно сделать через обработку KeyPress, есть и компоненты для этого, но это же все лишний геморрой и причем для каждой формы и переход по стрелочкам все равно не сделаешь.
Потом, что меня убивает, невозможно определить такое событие, как ввод пользователем чего-либо в какое-то поле. Ведь мелочь же совершеннейшая! Тем не менее помню, как на эту мелочь я когда-то убил уйму времени и все равно красиво сделать не удалось, а нужно было всего-то лишь, чтобы при вводе пользователем даты открывался архив, ну и на какое событие его открывать? На exit нельзя, пользователь ввел дату и спокойно ждет когда откроется архив и уходить никуда не собирается, на change тоже нельзя, он реагирует на каждый нажатый символ, тем более, что можно дату не вводить, а выбрать из календаря, на клавишу Enter, опять-таки, если дата выбирается из календаря, то с какой радости пользователь должен нажимать Enter? В общем так и не удалось эту проблему решить.
Можно было еще долго продолжать этот список, но ладно, не буду утомлять народ.
Конечно все эти проблемы можно решить с помощью создания компонент в ран-тайм, но тогда теряется визуальность разработки и зачем тогда вообще нужен этот RAD?
Re: Почему VCL такая дубовая?
От: -Dm-  
Дата: 08.08.02 05:58
Оценка:
C помощью Accessa можно сделать "удобный и красивый интерфейс" — XA XA XA :)
Re: Почему VCL такая дубовая?
От: Anatolix Россия https://www.linkedin.com/in/anatolix/
Дата: 08.08.02 06:05
Оценка:
Здравствуйте Writer, Вы писали:

W>Давно хотел задать этот вопрос, боялся, что запинают. Но все-таки задам. Итак,


W>Почему VCL такая дубовая?


W>Например, такая простая вещь, как переход между контролами через Enter


А чем тебе Tab не подходит, как у всех Windows программ

календаря, то с какой радости пользователь должен нажимать Enter? В общем так и не удалось эту проблему решить.

А в access как это решается как он угадфыает что пользователь закончил вводить например строку.

W>Конечно все эти проблемы можно решить с помощью создания компонент в ран-тайм, но тогда теряется визуальность разработки и зачем тогда вообще нужен этот RAD?


Зачем в runtime. Напиши свой компонент кторый все делает как надо и юзай его.
Любая проблема дизайна может быть решена введением дополнительного абстрактного слоя, за исключением проблемы слишком большого количества дополнительных абстрактных слоев
Re[2]: Почему VCL такая дубовая?
От: Аноним  
Дата: 08.08.02 07:08
Оценка:
Здравствуйте Anatolix, Вы писали:


A>А чем тебе Tab не подходит, как у всех Windows программ


Ну приучили нас к трепетному отношению пользователю, бабушки, которые с досовских программ привыкли переходить ентером не будут на таб переучиваться

A>календаря, то с какой радости пользователь должен нажимать Enter? В общем так и не удалось эту проблему решить.


A>А в access как это решается как он угадфыает что пользователь закончил вводить например строку.

А там для этого есть специальное событие и можно быть уверенным, что оно всегда отработает, когда нужно, либо после выбора значения из списка, либо после ввода и нажатия Enter, либо при переходе на другой контрол и т.д.

W>>Конечно все эти проблемы можно решить с помощью создания компонент в ран-тайм, но тогда теряется визуальность разработки и зачем тогда вообще нужен этот RAD?


A>Зачем в runtime. Напиши свой компонент кторый все делает как надо и юзай его.

И сколько человеко-месяцев, -лет, -десятилетий на это уйдет? Я даже из готовых библиотек ничего по настоящему стоящего не видел. Ну есть что-то хорошее в Ehlib, но до идеала далеко.
Когда пытаешься переписывать, приходишь к тому, что всю VCL целиком надо переписать :)
Re: Почему VCL такая дубовая?
От: &reY Украина http://www.livejournal.com/~1000turov/
Дата: 08.08.02 07:39
Оценка:
Здравствуйте Writer, Вы писали:

W>Например, такая простая вещь, как переход между контролами через Enter,


так есть же исходники, взял переделал у главного предка и перекомпили VCL, всех делов то
Re[2]: Почему VCL такая дубовая?
От: Anatolix Россия https://www.linkedin.com/in/anatolix/
Дата: 08.08.02 07:52
Оценка:
Здравствуйте &reY, Вы писали:

&Y>Здравствуйте Writer, Вы писали:

W>>Например, такая простая вещь, как переход между контролами через Enter,


&Y>так есть же исходники, взял переделал у главного предка и перекомпили VCL, всех делов то

Это мечты. Из исходников весь VCL нельзя собрать, они не полные.
Любая проблема дизайна может быть решена введением дополнительного абстрактного слоя, за исключением проблемы слишком большого количества дополнительных абстрактных слоев
Re[3]: Почему VCL такая дубовая?
От: &reY Украина http://www.livejournal.com/~1000turov/
Дата: 08.08.02 08:23
Оценка:
Здравствуйте Anatolix, Вы писали:

A>Это мечты. Из исходников весь VCL нельзя собрать, они не полные.


мечты-мечты... Вы моя слабость

в дествительности я собирать заново VCL не пробовал и тоже думаю что это не получится
Re: Почему VCL такая дубовая?
От: Young yunoshev.ru
Дата: 08.08.02 10:06
Оценка:
Здравствуйте Writer, Вы писали:

W>Давно хотел задать этот вопрос, боялся, что запинают. Но все-таки задам. Итак,


W>Почему VCL такая дубовая?


Не согласен. VCL в первую очередь это идея и технология?

Вопрос не коректен — из того что ты написал ниже он должен звучать так:

Почему текщая реализация VCL от фирмы Borland такая дубовая?


W>Можно было еще долго продолжать этот список, но ладно, не буду утомлять народ.

W>Конечно все эти проблемы можно решить с помощью создания компонент в ран-тайм, но тогда теряется визуальность разработки и зачем тогда вообще нужен этот RAD?

Умиляет меня это — то VCL ругаю за то что в ней навороченно много всего, то за то что мало всего...

RAD и "визуальность разработки" — это веши связанные только косвенно, не нужно путать.

Можно создавать не визуальну програму и использовать RAD.

С Уважением Андрей.....
Re: Почему VCL такая дубовая?
От: PSP Беларусь  
Дата: 08.08.02 11:40
Оценка:
Здравствуйте Writer, Вы писали:

W>Давно хотел задать этот вопрос, боялся, что запинают. Но все-таки задам. Итак,

W>Почему VCL такая дубовая?
W>Конечно все эти проблемы можно решить с помощью создания компонент в ран-тайм, но тогда теряется визуальность разработки и зачем тогда вообще нужен этот RAD?

Всё это ерунда, а не аргументы. Моё мнение заведомо несубъективно, тк я Дельфи вообще одним глазом видел. И я грубый сторонник VC++.

Но это не аргументы против. Это ерунда какая-то.

MFC тоже такую дрянь не поддерживает. Так что ДУБОВАЯ ОНА?
Всегда Ваш, PSP.
Re[2]: Почему VCL такая дубовая?
От: Aquila http://www.wasm.ru
Дата: 10.08.02 19:31
Оценка:
Здравствуйте PSP, Вы писали:

PSP>Но это не аргументы против. Это ерунда какая-то.

PSP>MFC тоже такую дрянь не поддерживает. Так что ДУБОВАЯ ОНА?

Безусловно.
Re[3]: Почему VCL такая дубовая?
От: DrMom  
Дата: 12.08.02 08:30
Оценка:
Здравствуйте Аноним, Вы писали:

A>>Зачем в runtime. Напиши свой компонент кторый все делает как надо и юзай его.

А>И сколько человеко-месяцев, -лет, -десятилетий на это уйдет? Я даже из готовых библиотек ничего по настоящему стоящего не видел. Ну есть что-то хорошее в Ehlib, но до идеала далеко.
А>Когда пытаешься переписывать, приходишь к тому, что всю VCL целиком надо переписать :)

Вот-вот!!! За это я и не люблю VCL. Одним словом проблема формулируется так: "Или пишешь так, как предусмотрено Borland'ом или пишешь все сам с нуля". :maniac:
Re[2]: Почему VCL такая дубовая?
От: DrMom  
Дата: 12.08.02 08:34
Оценка:
Здравствуйте &reY, Вы писали:

&Y>Здравствуйте Writer, Вы писали:

W>>Например, такая простая вещь, как переход между контролами через Enter,


&Y>так есть же исходники, взял переделал у главного предка и перекомпили VCL, всех делов то ;)

Действительно! Всего-то делов. :))) А если потом захочется по Tab переходы сделать, то снова перекомпилишь исходники и Ok. :super:
Re[2]: Почему VCL такая дубовая?
От: DrMom  
Дата: 12.08.02 08:45
Оценка: -1
Здравствуйте Young, Вы писали:


W>>Можно было еще долго продолжать этот список, но ладно, не буду утомлять народ.

W>>Конечно все эти проблемы можно решить с помощью создания компонент в ран-тайм, но тогда теряется визуальность разработки и зачем тогда вообще нужен этот RAD?

Y>Умиляет меня это — то VCL ругаю за то что в ней навороченно много всего, то за то что мало всего...:)


Да нет же, ни за то и ни за это. За костность, негибкость и тормознутость. Извените за бональность, но геморойно создать в нем WinAmp и это так. VCL не может быть главной платформой для создания интерфейсных приложений, потому что не может быть никогда!!!

Y>RAD и "визуальность разработки" — это веши связанные только косвенно, не нужно путать.


Согласен. Это истина.

Y>Можно создавать не визуальну програму и использовать RAD.


И сие тоже правда. ;)
Re[4]: Почему VCL такая дубовая?
От: Anatolix Россия https://www.linkedin.com/in/anatolix/
Дата: 12.08.02 08:53
Оценка: 12 (1)
Здравствуйте DrMom, Вы писали:

DM>Вот-вот!!! За это я и не люблю VCL. Одним словом проблема формулируется так: "Или пишешь так, как предусмотрено Borland'ом или пишешь все сам с нуля".


Хм. Вообще говоря это относится ко всем библиотекам.
(за исключением тех в которых ничего не предусмотрено вообще
и все надо писать с нуля)
Любая проблема дизайна может быть решена введением дополнительного абстрактного слоя, за исключением проблемы слишком большого количества дополнительных абстрактных слоев
Re[2]: Почему VCL такая дубовая?
От: DrMom  
Дата: 12.08.02 08:53
Оценка: -1
Здравствуйте PSP, Вы писали:

PSP>Здравствуйте Writer, Вы писали:


W>>Давно хотел задать этот вопрос, боялся, что запинают. Но все-таки задам. Итак,

W>>Почему VCL такая дубовая?
W>>Конечно все эти проблемы можно решить с помощью создания компонент в ран-тайм, но тогда теряется визуальность разработки и зачем тогда вообще нужен этот RAD?

PSP>Всё это ерунда, а не аргументы. Моё мнение заведомо несубъективно, тк я Дельфи вообще одним глазом видел. И я грубый сторонник VC++.


PSP>Но это не аргументы против. Это ерунда какая-то.


Вот ты вначале поработай в VCL разрабатывая сложный интерфейс с нестандартными элементами и посмотрим, что-ты скажешь потом. :)

PSP>MFC тоже такую дрянь не поддерживает. Так что ДУБОВАЯ ОНА?


Вот только не надо так про MFC. Я может и не долюбливаю MFC, но он все же позволяет сделать и такое и многое др. и ваще все, что хочешь. (с последним это я конечно же загнул) :)
Re[3]: Почему VCL такая дубовая?
От: Anatolix Россия https://www.linkedin.com/in/anatolix/
Дата: 12.08.02 09:00
Оценка:
Здравствуйте DrMom, Вы писали:

PSP>>Но это не аргументы против. Это ерунда какая-то.


DM>Вот ты вначале поработай в VCL разрабатывая сложный интерфейс с нестандартными элементами и посмотрим, что-ты скажешь потом.


PSP>>MFC тоже такую дрянь не поддерживает. Так что ДУБОВАЯ ОНА?


DM>Вот только не надо так про MFC. Я может и не долюбливаю MFC, но он все же позволяет сделать и такое и многое др. и ваще все, что хочешь. (с последним это я конечно же загнул)


Дак и VCL позволяет. Все в прямоту рук упирается в обоих случаях.
Любая проблема дизайна может быть решена введением дополнительного абстрактного слоя, за исключением проблемы слишком большого количества дополнительных абстрактных слоев
Re[5]: Почему VCL такая дубовая?
От: DrMom  
Дата: 12.08.02 09:01
Оценка:
Здравствуйте Anatolix, Вы писали:

A>Здравствуйте DrMom, Вы писали:


DM>>Вот-вот!!! За это я и не люблю VCL. Одним словом проблема формулируется так: "Или пишешь так, как предусмотрено Borland'ом или пишешь все сам с нуля". :maniac:


A>Хм. Вообще говоря это относится ко всем библиотекам.

A>(за исключением тех в которых ничего не предусмотрено вообще
A>и все надо писать с нуля)

Ладно, я понял что не совсем понятно выразился. :shuffle: Вобщем доступ к недрам реализации у VCL очень низкий. На мой взгляд ОЧЕНЬ низкий. Идеальный вариант, когда я могу используя библиотеку в любой момент взять бразды правления в свои руки, а когда закончу сдать их обратно. :super:
Re[4]: Почему VCL такая дубовая?
От: DrMom  
Дата: 12.08.02 09:11
Оценка: -1
Здравствуйте Anatolix, Вы писали:

A>Здравствуйте DrMom, Вы писали:


PSP>>>Но это не аргументы против. Это ерунда какая-то.


DM>>Вот ты вначале поработай в VCL разрабатывая сложный интерфейс с нестандартными элементами и посмотрим, что-ты скажешь потом. :)


PSP>>>MFC тоже такую дрянь не поддерживает. Так что ДУБОВАЯ ОНА?


DM>>Вот только не надо так про MFC. Я может и не долюбливаю MFC, но он все же позволяет сделать и такое и многое др. и ваще все, что хочешь. (с последним это я конечно же загнул) :)


A>Дак и VCL позволяет. Все в прямоту рук упирается в обоих случаях.


Конечно же позволяет, разница лишь в том в какой степени. :)
Re[3]: Почему VCL такая дубовая?
От: Igor Trofimov  
Дата: 12.08.02 09:26
Оценка:
DM>Да нет же, ни за то и ни за это. За костность, негибкость и тормознутость. Извените за бональность, но геморойно создать в нем WinAmp и это так.

За "бональность" извиним, а что такого геморойного в написании интерфейса WinAmp-а на VCL — совершенно непонятно.
Re[6]: Почему VCL такая дубовая?
От: Anatolix Россия https://www.linkedin.com/in/anatolix/
Дата: 12.08.02 09:33
Оценка:
Здравствуйте DrMom, Вы писали:

DM>Здравствуйте Anatolix, Вы писали:


DM>Ладно, я понял что не совсем понятно выразился. Вобщем доступ к недрам реализации у VCL очень низкий. На мой взгляд ОЧЕНЬ низкий. Идеальный вариант, когда я могу используя библиотеку в любой момент взять бразды правления в свои руки, а когда закончу сдать их обратно.


Ну дак и вперед. Что тебе мешает сделать это в VCL.
Перехватывай сообщения и делай как хочешь. Не вижу
чем это принципиально от MFC отличается.
Любая проблема дизайна может быть решена введением дополнительного абстрактного слоя, за исключением проблемы слишком большого количества дополнительных абстрактных слоев
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.