如题请问各位大虾:
我现在FORM上有一个PANEL包含很多标签,我现在要在另一个FORM上动态创建和这个PANEL一模一样的,怎么做?
请赐教
我现在FORM上有一个PANEL包含很多标签,我现在要在另一个FORM上动态创建和这个PANEL一模一样的,怎么做?
请赐教
解决方案 »
- 数据库与操作系统哪个技术含量更高?
- 有关最大化和还原的问题
- 寻求解决方案??
- 如何 获得 自身程序 的 版本号 ???? 急!!!!!!!!!!!!
- 简单SQL语句的问题???
- 跨年的问题 在线等 谢谢
- createwindow 和 createWindowEx有什么区别?
- 关于三层的一个例子,我该如何让我的客户端可以正常运行呀。内详
- 求DELPHI处理DOMINO数据库的范例.
- 有一台旧显示器,在1024*768分辨率下可用,在800*600下花屏。
- 问个有关组件的问题,请高手回答,急!!!!!!!!!!!
- 急!请问:一运行,就出现System.pas文件,找不到的情况,但是明明有这个文件,求教各位高手!
if form1.components[i].parent = panel1 then begin
自己加创建代码吧
end;
end;
在frame上放panel,放其它东东然后新建一个Form,点Frame(第一个控件),放到Form上,选你刚刚建的Frame,可以了吧
只是事件要自己加了。
当然用IDE提供的有关FORM的继承、直接COPY方法也是可行的。
多谢!!!
面板上。
2)选择 File | New Frame 建立一个新的框架。在这一框架上,添加三个label和三个DBEdit,还有一个DBNavigator和一个DataSource。将label的caption分别设为ID,First Name和Last Name。将DBEdit和DBNavigator的DataSource属性设为DataSource1。
3)将框架的Name属性设为NameFrame。(相比其它对象,起一个有意义的名字对框架来说非常重要)最后,选择File | Save As 保存框架。在这里,用文件名NAMEFRAM.PAS保存框架。 这就是建立一个框架的所有步骤。下面一节将演示如何使用它。
使用框架 框架是一个组件,但它与组件面板中的大多数其它组件有不同的用法。以下步骤演示如何使用一个框架:1)在由上面步骤建立的工程中选择Form1。
2)加两个GroupBox到窗体上,其中一个在另一个之上。设置第一个的caption为Customers,第二个的caption为Employees。
3)现在添加框架。选择组件面板的Standard页,点击Frame组件并将其拖到名为Customers的GroupBox中。这时Delphi会显示一个Select frame to insert对话框。
4)在对话框中选择NameFrame。现在框架将在名为Customers的GroupBox中显示。重复这一步骤,这一次将框架放在名为Employees的GroupBox中。你可能要调节框架的尺寸,这跟你最初是如何放置有关。
5)将两个Table组件放到窗体中,将其DatabaseName属性都设为IBLocal。将Table1的TableName属性设为CUSTOMER,将Table2的TableName属性设为EMPLOYEE。将两个Table的Active属性都设为True,使它们有效。
6)下面的步骤将把事情变得有趣。选择名为Customers的GroupBox中的DataSource,将其DataSet属性设为Table1。一般的你不能直接选择组件中的对象,但是框架是个例外。你可以选择框架中的任何对象,操作它们的属性。然后,选择名名为Customers的GroupBox中DataSource,其DataSet属性设为Table2。
7)最后,设置好所有的DBEdits。将名为Customers的GroupBox中的三个DBEdits的DataField属性分别设为CUST_NO,CONTACT_FIRST和CONTACT_LAST。对Employees中的,设置DataField属性为EMP_NO,FIRST_NAME和LAST_NAME。
8)保存工程并运行。
框架和继承 到此为止,使用框架似乎没有什么好处。但是,当你要在一些地方使用同一个框架,然后又要改变所有这些实例时,框架的威力就表现得很明显了。例如,假设你要使所有的NameFrame框架变为只读的,你只需要将初始的框架修改,所有的修改就会被框架实例立刻继承。
你依照如下步骤就可以验证这一点:1)在上面建立的工程中,按[Shift][F12]并在窗体列表中选择NameFrame。
2)将DataSource的AutoEdit属性设为False 。
3)然后,选择DBNavigator,展开它的VisibleButtons属性,并设置nbInsert,nbDelete,nbEdit,nbPost和nbCancel标志为False。
4)现在看一下你的主窗体,注意两个NameFrame的后代都继承了你对框架做的修改。