![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Изменяемые компоненты формы хранить в плагинах или ...? [D7, WinXP]
plato © (2009-09-11 11:52:00)Нужен совет о том, как лучше организовать форму приложения.
Само приложение работает так. Есть несколько разных sql-запросов к БД. У каждого запроса могут быть свои параметры. Эти параметры буду вводиться при помощи различных визуальных компонент типа TEdit, TChekBox, TUpDown и т.п. В зависимости от запроса и от количества параметров соответственно этим компоненты разнятся.
В том случае, когда этих запросов 4-5, то все можно было бы сделать, например через TPageControl, расставить для каждого запроса компоненты, и жить счастливо.
Но количество разных вариантов запросов растет с каждым днем.
При запуске программы, программа должна просканировать соответствующий каталог, выяснить список тех форм (или как это лучше обозвать, список плагинов, дополнений, приложений) которые она будет обрабатывать, и на основании этого списка формируется меню. Затем, жму в меню нужный пункт, и у меня на форме появляются нужные кнопки и компоненты, а sql-запрос хранится в какой-то переменной. Ну и далее по смыслу запроса что-то делается и выводится.
Стоит вопрос, как это лучше организовать, чтобы не переделывать каждый раз приложение.
Есть такие варианты:
1) Делать плагины. Создал dll и подбросил в каталог с плагинами. Но мне кажется, что задача намного проще, чем использование dll.
2) Хранить описание нужных компонентов в ini, txt или xml файлах.
3) Ваш вариант …. )))))))))
b z (2009-09-12 15:02:00) [1]
> Есть несколько разных sql-запросов к БД. ... Но количество разных вариантов запросов растет с каждым днем.
Мама дорогая, и вы уже в цейтноте. Интересно а что будет, когда их будет, как у нас сейчас > 600, и продолжают появлятся новые? :)
Медвежонок Пятачок (2009-09-11 11:59:00) [2]наш вариант проще.
несколько фреймов под каждый тип параметра
параметры именовать с префиксами в которых указывать тип параметра.
на форме ввода параметров создавать фреймы динамически по числу параметров и в соответствии с типом указанном в префиксе.
а плагины и прочие заумные вещи оставить для случая стрельбы из пушки по стаду слонов