我在form里动态创建控件之后想release这个form总是出错,而且想重新打开会提示已经打开。
创建这些控件我也是在这里请教的,详情请看:http://expert.csdn.net/Expert/TopicView1.asp?id=2916247
请大家再次伸出援手!
贴上formcreat里的代码请大家看看有什么问题:
while not datamodule2.Query6.Eof do
begin
Panels[i]:=TPanel.Create(Self);
Panels[i].Parent := Panel2;
panels[i].Left:=panel3.Left;
panels[i].Top:=panel3.Top+60*n;
panels[i].Width:=panel3.Width;
panels[i].Height:=panel3.Height;
panels[i].Visible:=true;
panels[i].Enabled:=true;
Edits:=TEdit.Create(self);
Edits.Parent:=Panels[i];
Edits.Left:=edit5.Left;
Edits.Top:=edit5.Top;
Edits.Width:=edit5.Width;
Edits.Height:=edit5.Height;
edits.Text:='';
//edits[i].
Edits.Visible:=true;
edits.Enabled:=true;
Labels:=TLabel.Create(self);
//Labels.HasParent;
labels.Parent:=Panels[i];
labels.Left:=label10.Left;
labels.Top:=label10.Top;
labels.Width:=label10.Width;
labels.Height:=label10.Height;
labels.Visible:=true;
labels.Enabled:=true;
comboboxs:=Tcombobox.Create(self);
//Labels.HasParent;
comboboxs.Parent:=Panels[i];
comboboxs.Left:=combobox8.Left;
comboboxs.Top:=combobox8.Top;
comboboxs.Width:=combobox8.Width;
comboboxs.Height:=combobox8.Height;
comboboxs.Visible:=true;
comboboxs.Enabled:=true;
comboboxs.Text:='';
labels.Caption:=fieldbyname('server_name').asstring;
edits.Text:=fieldbyname('server_re').asstring;
comboboxs.Items.Add('正常');
comboboxs.Items.Add('不正常');
Edits.Name := 'Edit' + inttostr(i);
Labels.Name := 'Label' + inttostr(i);
ComboBoxs.Name := 'ComboBox' + inttostr(i);
edits.Text:=fieldbyname('server_re').asstring;
comboboxs.Text:='';
ComboBoxs.OnChange:=MyComboBoxChange;
comboboxs.Style:=csDropDownList;
next;
i:=i+1;
n:=n+1;
end;我用free和freeonrelease试过都不行,请问哪位高手给点例程看看,指点一下。
创建这些控件我也是在这里请教的,详情请看:http://expert.csdn.net/Expert/TopicView1.asp?id=2916247
请大家再次伸出援手!
贴上formcreat里的代码请大家看看有什么问题:
while not datamodule2.Query6.Eof do
begin
Panels[i]:=TPanel.Create(Self);
Panels[i].Parent := Panel2;
panels[i].Left:=panel3.Left;
panels[i].Top:=panel3.Top+60*n;
panels[i].Width:=panel3.Width;
panels[i].Height:=panel3.Height;
panels[i].Visible:=true;
panels[i].Enabled:=true;
Edits:=TEdit.Create(self);
Edits.Parent:=Panels[i];
Edits.Left:=edit5.Left;
Edits.Top:=edit5.Top;
Edits.Width:=edit5.Width;
Edits.Height:=edit5.Height;
edits.Text:='';
//edits[i].
Edits.Visible:=true;
edits.Enabled:=true;
Labels:=TLabel.Create(self);
//Labels.HasParent;
labels.Parent:=Panels[i];
labels.Left:=label10.Left;
labels.Top:=label10.Top;
labels.Width:=label10.Width;
labels.Height:=label10.Height;
labels.Visible:=true;
labels.Enabled:=true;
comboboxs:=Tcombobox.Create(self);
//Labels.HasParent;
comboboxs.Parent:=Panels[i];
comboboxs.Left:=combobox8.Left;
comboboxs.Top:=combobox8.Top;
comboboxs.Width:=combobox8.Width;
comboboxs.Height:=combobox8.Height;
comboboxs.Visible:=true;
comboboxs.Enabled:=true;
comboboxs.Text:='';
labels.Caption:=fieldbyname('server_name').asstring;
edits.Text:=fieldbyname('server_re').asstring;
comboboxs.Items.Add('正常');
comboboxs.Items.Add('不正常');
Edits.Name := 'Edit' + inttostr(i);
Labels.Name := 'Label' + inttostr(i);
ComboBoxs.Name := 'ComboBox' + inttostr(i);
edits.Text:=fieldbyname('server_re').asstring;
comboboxs.Text:='';
ComboBoxs.OnChange:=MyComboBoxChange;
comboboxs.Style:=csDropDownList;
next;
i:=i+1;
n:=n+1;
end;我用free和freeonrelease试过都不行,请问哪位高手给点例程看看,指点一下。
解决方案 »
- 急!Delphi如何实现将“任意字符串”写入注册表reg_binary类型的数据中?给出详细解答的送100分!谢谢!
- 网站开通,CSDN的朋友来捧场.
- 知道类名,如何创建类的对象?
- 请问Delhpi中查找子串在主串中的位置的函数是什么?
- 恶心死了,该死的access,为什么在程序中和ACCESS中SQL语句执行结果不一样?
- 一个很急的问题,请各位大侠帮忙,小女子在此谢了~~~~~~~~~~~~~
- 【delphi+oracle报表解决方案(二)】临时表的使用
- 请问如何将ttable中的数据转到TAdotable中去?
- 怎么搜索一个目录里的文件(非可视控件),并且创建写文件(创建时向文件里写行数据)。filewrite为什么写的数据是乱码?
- 怎么在一个service application里保护某个进程不被关闭?
- 关于派生类中的destroy方法的问题
- 我用adoquery1.locate查找记录后,怎样将指针定位到下一条匹配的记录
to:web700,你要贴完整的是什么意思?全贴上来吗?我先贴一些吧:
按钮激发事件调用的程序:
procedure appschedule;
begin
formschedule:=tformschedule.Create(application);
end;
关闭form:
procedure TFormschedule.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
formschedule.Release;
end;
这个form所定义的控件:
type
TFormschedule = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
GroupBox1: TGroupBox;
ComboBox1: TComboBox;
ComboBox2: TComboBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
ComboBox3: TComboBox;
Label5: TLabel;
Memo1: TMemo;
Panel1: TPanel;
SpeedButton1: TSpeedButton;
Label6: TLabel;
GroupBox2: TGroupBox;
Label8: TLabel;
Calendar1: TCalendar;
TabSheet3: TTabSheet;
GroupBox3: TGroupBox;
GroupBox4: TGroupBox;
TabSheet4: TTabSheet;
Panel2: TPanel;
Label9: TLabel;
Panel3: TPanel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
GroupBox5: TGroupBox;
Label4: TLabel;
Label7: TLabel;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
Edit1: TEdit;
Label17: TLabel;
Memo2: TMemo;
BitBtn2: TBitBtn;
GroupBox6: TGroupBox;
DBGrid1: TDBGrid;
Label18: TLabel;
ComboBox4: TComboBox;
BitBtn3: TBitBtn;
GroupBox7: TGroupBox;
Label19: TLabel;
Label20: TLabel;
Label21: TLabel;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
Memo3: TMemo;
BitBtn4: TBitBtn;
ComboBox5: TComboBox;
BitBtn5: TBitBtn;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
GroupBox8: TGroupBox;
Label22: TLabel;
Edit2: TEdit;
SpeedButton5: TSpeedButton;
ComboBox6: TComboBox;
ComboBox7: TComboBox;
Label23: TLabel;
Label24: TLabel;
BitBtn6: TBitBtn;
GroupBox9: TGroupBox;
DBGrid2: TDBGrid;
Label25: TLabel;
Label26: TLabel;
Edit3: TEdit;
Edit4: TEdit;
SpeedButton6: TSpeedButton;
SpeedButton7: TSpeedButton;
Label27: TLabel;
Label28: TLabel;
Memo4: TMemo;
DateTimePicker1: TDateTimePicker;
Label10: TLabel;
ComboBox8: TComboBox;
Edit5: TEdit;
UpDown1: TUpDown;
BitBtn1: TBitBtn;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure BitBtn5Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure Calendar1Change(Sender: TObject);
procedure BitBtn6Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ComboBox8Change(Sender: TObject);
procedure MyComboBoxChange(Sender: TObject);
procedure SpeedButton6Click(Sender: TObject);
procedure Edit3Change(Sender: TObject);
procedure Edit4Exit(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure ComboBox2Change(Sender: TObject);
procedure ComboBox3Change(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure ComboBox4Change(Sender: TObject);
private
{ Private declarations } public
{ Public declarations }
end;
//Do something
formSchedule.Release;