![]() |
|
انشاء dbcontrols وقت التنفيذ - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : انشاء dbcontrols وقت التنفيذ (/showthread.php?tid=10808) |
انشاء dbcontrols وقت التنفيذ - jeanjamil - 01-05-2020 السلام عليكم عندما ننشا حقول في clientdataset ونقوم بسحبها فهي تنشأ لنا dbcontrols بحسب الحقل. السوال هل يمكن فعل هذا وقت التنفيذ وكيف، او هل من افكار اخرى في حال تغير مسار datasource عن الجدول المنشأ وقت التصميم RE: انشاء dbcontrols وقت التنفيذ - S.FATEH - 01-05-2020 السلام عليكم نعم يمكن ربط الـ DataSource وقت التنفيذ PHP كود : DBEdit1.DataSource := DataSource1;RE: انشاء dbcontrols وقت التنفيذ - jeanjamil - 02-05-2020 سلام شكرا اولا، ولكن المقصود انه في حال اضيف حقل وقت التنفيذ ان يقوم البرنامج بانشاء dbeditجديد لهذا الحقل RE: انشاء dbcontrols وقت التنفيذ - Lam.Abdeldjalil - 10-05-2020 وعليكم السلام و رحمة الله مثال كود : var
I : Integer;
dbedt : TDBEdit;
dbmemo : TDBMemo;
lbl : TLabel;
begin
for I := 0 to ClientDataSet1.Fields.Count-1 do
begin
if ClientDataSet1.Fields[i].DataType=ftMemo then
begin
lbl := TLabel.Create(self);
lbl.Caption:=ClientDataSet1.Fields[i].FieldName;
lbl.Top:=i*50;
lbl.Left:=50;
lbl.Parent:=self;
lbl.Visible:=true;
dbmemo := TDBMemo.Create(self);
dbmemo.DataSource:=DataSource1;
dbmemo.DataField:=ClientDataSet1.Fields[i].FieldName;
dbmemo.Top:=lbl.Top+20;
dbmemo.Left:=50;
dbmemo.Parent:=self;
dbmemo.Visible:=true;
end
else
begin
lbl := TLabel.Create(self);
lbl.Caption:=ClientDataSet1.Fields[i].FieldName;
lbl.Top:=i*50;
lbl.Left:=50;
lbl.Parent:=self;
lbl.Visible:=true;
dbedt := TDBEdit.Create(self);
dbedt.DataSource:=DataSource1;
dbedt.DataField:=ClientDataSet1.Fields[i].FieldName;
dbedt.Top:=lbl.Top+20;
dbedt.Left:=50;
dbedt.Parent:=self;
dbedt.Visible:=true;
end;
end; |