[Crystal Studio Web][delphi]利用制作Delphi“向导” |
在许多应用软件中,利用各种“向导”用户可以完成不同的操作。在Delphi中利用一个Form就可以制作出“向导”。下面用一个简单的例子来说明。 1. 新建一工程,此工程中包含两个Form:Form1、Form2,对应单元名leader.pas、show.pas。使用Form1制作“向导”,Form2显示所生成的构件。 2. 在Form1上添加Panel1、Panel2、Panel3,其属性BorderStyle、BevelInner、BevelOuter均设为bsNone,Panel2、Panel3的Visible属性设为False。再添加Button1、Button2、Button3、Button4, 其Caption属性分别为“取消”、“上一步”、“下一步”、“完成”, Button2、Button3、Button4的Enabled属性设为False。 3. 在Panel1上先添加Label1,其Caption属性为“步骤一:选择构件类型”。 再添加ListBox1,其Items属性为TButton、TEdit、TPanel。 4. 在Panel2先添加Label2,其Caption属性为“步骤二:定义构件的位置”。 再添加Edit1、Edit2,用户使用Edit1、Edit2输入构件的左边距和上边距。 5. 在Panel3先添加Label3,其Caption属性为“步骤三:定义构件的大小”。 再添加Edit3、Edit4,用户使用Edit3、Edit4输入构件的大小。 6. 在Form1的程序单元leader.pas的Uses子句中添加Form2的单元标识符Show。在Implementation部分添加变量定义:var step :integer=1,变量step用以表示当前步骤的序号。 7. 在Form2的程序单元Show.pas的uses子句中添加StdCtrls和ExtCtrls,这是Panel、Button、Edit构件所在单元的单元名称;在Implementation部分添加Uses子句:uses leader; 8. 编写ListBox1的OnClick事件。选择构件类型后,激活“下一步”按钮,代码如下:Button3.Enabled := True; 9. 编写“下一步”按钮的OnClick事件: procedure TForm1.Button3Click(Sender: TObject); begin step := (step + 1)mod 3; if step =0 then step := 3; case step of 2: begin //进入步骤2 panel2.Visible := True; //使panel2出现在最前面 panel1.Visible := False; Button2.Enabled := True; //激活“上一步”按钮 end; 3: begin //进入步骤3 panel3.Visible := True; //使panel3出现在最前面 panel2.Visible := False; Button3.Enabled := False; //使“下一步”按钮无效 Button4.Enabled := True; //激活“完成”按钮 end; end; end; 10. 按照步骤8的原理编写“上一步”按钮的OnClick事件。 11. 编写“取消”按钮的OnClick事件。在其OnClick事件中添加代码:close。 12. 编写“完成”按钮的OnClick事件。在其OnClick事件中添加代码:Form2.Showmodal。 13. 编写Form2的OnShow事件。当显示Form2时,根据以上各步骤所做的选择在Form2上生成构件。这里不再详述。 |
制作Delphi“向导”
最新推荐文章于 2022-07-29 13:28:39 发布