请问: 这个测试组件的程序怎么写??(100分)

  • 主题发起人 主题发起人 rove11
  • 开始时间 开始时间
R

rove11

Unregistered / Unconfirmed
GUEST, unregistred user!
《D5开发人员指南》 21章 21-16
把窗体做为对话框的形式,加上组件外套,作为组件安装。
代码如下:
unit pwdlg2;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
Tpassworddlg = class(TForm)
password: TEdit;
Label1: TLabel;
okbtn: TButton;
cancelbtn: TButton;
end;

tddpassworddlg=class(tcontrol)
private
passworddlg:tpassworddlg;
fpassword:string;
public
function execute:boolean;
published
property passwor:string read fpassword write fpassword;
end;

procedure register;
implementation

{$R *.dfm}

{ tddpassworddlg }

function tddpassworddlg.execute: boolean;
begin
passworddlg:=tpassworddlg.create(application);
try
result:=false;
if passworddlg.showmodal=mrok then
result:=passworddlg.password.text=fpassword;
finally
passworddlg.free;
end;
end;

procedure register;
begin
registercomponents('samples',[tddpassworddlg]);
end;

end.
 
new application
在form上加一个Tddpassworddlg组件,就在samples面板上
设置passwor为 password'要认证的密码
放一个button
onclick写
if ddppassworddlg1.execute then
showmessage('你已经通过了密码验证')
else
showmessage('密码错误');
 
在初始化显示主窗体前处理。
这个问题不是作弊的先兆吧。
 
TO DHL2001
我就是想先测试一下这个组件,再放到组件面版上去呀。
怎么样动态测试呢?请回答这个问题。谢谢!
 
TO DHL2001
我就是想先测试一下这个组件,再放到组件面版上去呀。
怎么样动态测试呢?请回答这个问题。谢谢!
 
你可以创建一个新的工程,在工程中添加你创建的控件类,先在此工程中使用这个类,如果
测试通过就安装在VCL中即可。
 
TO eliuliu
能给我代码吗?
 
其他部分不用改,Pwdlg.pas 必须在项目同一目录,口令区分大小写。
 
to 小雨哥
谢谢了。
按你的方式,程序开始就弹出了对话框。
但我在按“MROK”键进不去(对话框不消失)。

如果
1:我想要在自己的FORM上加一个BUTTON,按下后
才进入这个对话框。
2:在对话框中按“MROK”,按下后退出对话框。
那怎么做呢?

另外:那里有关于DELPHI的框架类的资料看,
请介绍一下(什么网上有?)
initialization // 在这里处理口令 (这里
我就不理解!)

(谢谢,会给你加分的。)


 
事情一步一步来。
 
TO 小雨哥:
感谢了!
但我还是想知道:FORM上加一个BUTTON,按下后
才进入这个对话框。这又要怎么写呢?
给我说说流程也好。
谢谢。。。:)
 
本代码在你将 TddgPasswordDialog 已经做为 VCL 加入了 VCL 面板后在 OnButtonClick 中使用。
 
多人接受答案了。
 
如果 TddgPasswordDialog 没有加入 VCL 面板怎么完成你的要求呢?
 
后退
顶部