Есть база firebird.
Есть ли какие-нибудь компоненты для построения формы ввода данных в базу?
Или таковых в природе нет и нужно самому придумать?
Динамическое создание формы ввода данных
Модератор: Модераторы
А в чём проблема ?
Вот простенькая замена ShowMessage
Тоже можно сделать и для ввода данных
Вот простенькая замена ShowMessage
Тоже можно сделать и для ввода данных
Код: Выделить всё
// Динамическая форма для вывода
// сообщений
Procedure WriteForm(M:String);
var
WF:TForm;
L:TLabel;
B:TButton;
begin
WF:=TForm.create(WV1);
wf.Top:=50;
wf.left:=25;
Wf.Width:=550;
Wf.Height:=200;
B:=TButton.Create(wf);
B.Caption:='Ok';
b.Left:=20;
b.Top:=155;
b.ModalResult:=1;
L:=TLabel.Create(wf);
l.Align:=alTop;
l.Top:=20;
l.Left:=20;
l.Font.Height:=14;
l.Caption:=m;
Wf.InsertControl(l);
Wf.InsertControl(B);
wf.ShowModal;
wf.Free;
end;
Я так понимаю ТС спрашивал об автоматическом создании форм для ввода данных на основании полей БД.
Самый простой вариант - это DBGrid, открыли нужную таблицу БД и вводите туда данные
Самый простой вариант - это DBGrid, открыли нужную таблицу БД и вводите туда данные
Сделал я так.
У меня русские наименования полей хранятся в таблице базы, там же и соответствие английских наименований полей.
Запросом выдергиваю все из таблицы, далее в цикле строю динамически поля на форме и присваиваю событие полю (при выборе поля), в котором на место поля подставляется элемент ввода, календарь, выбор каталога и т.д.
Поле окончания ввода в элементе(OnExit) - данные элемента подставляются в поле.
Вообщем все устраивает. Чуть надо доработать, а так, вполне рабочий вариант.
У меня русские наименования полей хранятся в таблице базы, там же и соответствие английских наименований полей.
Запросом выдергиваю все из таблицы, далее в цикле строю динамически поля на форме и присваиваю событие полю (при выборе поля), в котором на место поля подставляется элемент ввода, календарь, выбор каталога и т.д.
Поле окончания ввода в элементе(OnExit) - данные элемента подставляются в поле.
Вообщем все устраивает. Чуть надо доработать, а так, вполне рабочий вариант.
Поищи исходники старого DCL. Там это шире сделано.
- Little_Roo
- энтузиаст
- Сообщения: 639
- Зарегистрирован: 27.02.2009 18:56:36
- Откуда: Санкт-Петербург
Luxor писал(а):У меня русские наименования полей хранятся в таблице базы, там же и соответствие английских наименований полей
Извините, но ЗАЧЕМ ??? Или религия не позволяет присвоить полям НОРМАЛЬНЫЕ латинские (английские...сокращенные...в кодировке волапюк...значения)???
Для экспериментов - да, хорошо, а для реального проекта....... кака...
личное ИМХО
-
Kemet
- постоялец
- Сообщения: 241
- Зарегистрирован: 10.02.2010 18:28:32
- Откуда: Временно оккупированная территория
- Контактная информация:
Little_Roo писал(а):Извините, но ЗАЧЕМ ??? Или религия не позволяет присвоить полям НОРМАЛЬНЫЕ латинские
Есть люди, для которых нормальным является использование русского языка. Есть программисты, ждля которых нормальными являются русские идентификаторы, и даже есть те, для которых нормальным является использование русских ключевых слов. И в этом есть свои преимущества.
