说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

Delphi3.0中复活节彩蛋及实现

HTML文档下载 WORD文档下载 PDF文档下载
Delphi3.0中复活节彩蛋及实现

启动Delphi 3.0,打开Help菜单,单击“About”,在对话框中按住ALT键不放,输入TEAM,就可以看到测试人员名单;按住ALT键不放,输入DEVELOPERS,就可以看到开发人员名单;按住ALT键不放,输入QUALITY,就可以看到QUALITY人员名单。

复活节彩蛋是目前许多软件都具有的,你也可以在自己开发的软件中加入它。本文给出一个例子供参考,本文设计的复活节彩蛋是在“关于”对话框中按住ALT键,输入“EGGOUT”,将显示“你现在看到的是复活节彩蛋!OK!”信息,两秒种后自动消失,下面是实现的具体方法。

1. 根据惯例,复活节彩蛋一般都放在软件的“关于”(About)对话框中,为简化程序,在这里只使用一个“ABOUT”对话框。启动Delphi3后,关闭当前的空白窗体,在“FILE”菜单中选择“NEW...”,在“NEW ITEM”对话框中单击“FORM”卡,从中选择“ABOUT BOX”,在这个窗体的基础上你可以加入版本、版权等有关信息。

2. 在ABOUT BOX窗体的Panel1组件的空白处添加一个标签LABEL1,标题为“你现在看到的是复活节彩蛋!OK!”,设定合适的字体颜色和大小,将其Visible属性设置为FALSE。

3. 在"Object Inspector"中对ABOUT BOX窗体的KeyPreview属性缺省值做修改,将其值由FALSE改为TRUE,注意这一点很重要,否则无法实现本文的功能。

4. 在窗体的FormKeyDown事件中处理用户输入的字符:首先判断用户是否按下了ALT键,接着循环接收用户按住ALT输入的字符并放在一个字符串中,如果字符串等于“EGGOUT”,则置标签的显示属性为TRUE,延迟两秒种后自动隐含标签。

5 .双击“OK”按钮,写代码“CLOSE;”,用户可按此按钮退出程序。

下面给出完整的程序代码:

unit Unit1;

interface

uses Windows

SysUtils

Classes

Graphics

Forms

Controls

StdCtrls

Buttons

ExtCtrls;

type

TAboutBox = class(TForm)

Panel1: TPanel;

ProgramIcon: TImage;

ProductName: TLabel;

Version: TLabel;

Copyright: TLabel;

Comments: TLabel;

OKButton: TButton;

Label1: TLabel;

procedure FormKeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

procedure OKButtonClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

AboutBox: TAboutBox;

//定义一个字符串用来接收用户的输入

s:string;

implementation

{$R *.DFM}

procedure TAboutBox.FormKeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

var

delaytime:TDatetime;

begin

//如果按下ALT键、只接收字符

if (shift=[ssalt]) and (key>=$41) and (key<=$5a) then

begin

s:=s+chr(key);

if s=‘EGGOUT' then

begin

//显示彩蛋

label1.visible:=true;

//延迟代码

delaytime:=now+encodetime(0

0

2

0);

while now    Application.ProcessMessages;

label1.visible:=False;

end;

end;

end;

procedure TAboutBox.OKButtonClick(Sender: TObject);

begin

close;//程序结束

end;

end.

说明:彩蛋的表现形式可以是多种多样的,你可以显示动画文字、图片等。

此程序在Delphi 3.0 、中文WIN98 环境下调试通过。

谷歌更新BigQuery 允许在其中加入大型数据集 初创公司Spiral Genetics:超越现有DNA序列分析平台40倍速 六大开源监测工具 你用过哪个? TUP第28期:Intel 微软 Yahoo的大数据实践 惊变14天,从“小白”到上架App Store商店 “今日头条”CEO张一鸣:我是爱冒险的技术宅 OpenStack基金会COO Mark Collier:2014年将超越AWS Evernote更新Android SDK:新增商务服务并拆分“印象笔记” 主流编译器对C++11的支持现状比较 GCC 4.8发布,提升对C++11的支持 英国政府下令首选开源软件 为何美国IaaS收购被引爆?基于IaaS的四个误解和四个猜想 Kinect SDK v1.7迎来重大更新 如何激励同事编写单元测试? 谷歌GCE vs. 亚马逊EC2:快源于谷歌本有的底蕴 不要责怪开源技术 它是无辜的 短命:微软将于2014年停止对WP8系统支持 Native和Web过时了,企业级移动开发流行用Hybrid App 与EverNote竞争?谷歌Google Keep浮出水面 又一次跨越:著名3D游戏引擎Unity版本更新 Feedly团队:自研后端平台或将开源 StackMob的诱惑:16小时,山寨一款移动App “云”筹帷幄 开发者必知的5大SaaS在线服务工具 超350个政府项目托管在GitHub 政府开源会成主流? Kinect for Windows SDK 1.7正式发布,支持3D建模 SafeNet与风河系统联手推出VxWorks嵌入式系统软件货币化方案 Windows Server 2012中的动态负载均衡 Google等互联网公司将成为创新中心? 在Hadoop的战争中 MapR获新一轮3000万美元融资 初创公司DNNresearch:谷歌科技帝国的新“基石” 创业了,我们该如何起名? 只提一条记录的问题!! 为什么我的ServletContext会出错呢? 上传看不到主页啊???web.config vb+asp.net 很急,在线等待 網頁url傳遞參數變量及Form表單提交問題? 50分! 又是字符串,怎么总与我过不去 怎样把文件写入服务器端中映射的驱动器中,急 在线等。。。 [我贴我灌]世锦赛罗雪娟夺第三金 关于用户离职和升级后的处理? 代码问题,高手进 急,在线等待 DNS服务器的问题,高手救命!!!问题解决不了,老板要我走人了!!!!!(痛哭中 &&&&&&&&&) 鼠标当前位置的值与窗体位置如me.left 的值是怎么样换算的? 英文OS,我加一个中文字库,我要在我的程序中显示中文,该做些什么? 一个硬件问题,来看看吧!问了好多人多不明白 bcb6自带的install??? 简单要求 CSDN出的《JBuilder实用技术手册》到底怎么样呀?我看目录怎么像垃圾? 在jsp怎么取得用javabean连接得数据库中得记录总数 请教各位大师,如何用VB做一个象ComboBox一样的控件 web Service里的Application的问题 有没有能够打印固定行数的报表? 对XML不太熟悉,麻烦大家再看看! 关于bho及控制ie行为的问题, 如何动态的设置datawindow的计算域的表达式,及从程序中如何得到该计算域的值 [我贴我灌]巴塞罗那凯旋归来 “花样姑娘”泪洒观澜湖 一个到现在还没有解决的问题!我着急用啊!请哪位高手帮忙解决了,有高分相送! WIN32 CONSOLE APPLICATION 中怎么调用DLL (动态连接库) 怎么增加不了行,插入不了了?请大虾给个提示 50美元求作业! 如果没有学过C语言,能不能学J2SE啊? 100分请教:一个串行接口通信的问题————在线等待?!!!! 急,给个jb8中解决编辑jsp问题的补丁。谢谢 关于sendmail的设置以及PostNuke的安装 关于XML,XSL的兼容性问题 在SQL SERVER的视图不支持CASE语句吗?若要实现该如何写呢? 现在最标准的软件开发预算,各阶段的百分比是多少? ==========天哪!怎么会这样呢?我在全屏窗口中打开的任何窗口都是全屏显示的,可我不希望在全屏幕窗口中打开的窗口也是全屏怎么办啊?== 如何在远程服务器上安装web服务程序? 考虑到类的属性(表的字段)以后会增加,应该用怎样的设计模式或设计方法。 如何在子目录下获得根目录的网络路径? 急,IE每次打开都是最小化状态,怎样实现每次打开时将其最大化! 希望和大家讨论一下关于WebService的事务继承性的问题 请教一个关于日期使用的问题 急!!一个建表问题 WSAD怎么显示代码行号?? 50美元求作业!access 有没有能够打印固定行数的报表? 请教接收视频信号的问题 VBscript转换为JScript? 高中的物理我只能做同一种类型的题,但是扩展后就不能做了, 两物体一接触就会产生弹力的问题我知道这句话是错误的,因为产生弹力要物体间相互接触处并且产生形变.但我觉得两物体一接触就应该相互受到力的作用了吧?它们应该产生了形变只是我们 什么食物利水 1.如图所示,天平处于平衡状态,若将在水面上的木块取出来,直接放在天平的右盘上,那么\x05[ ](图片为一天平,左盘放置一个装了水的烧杯,水中漂浮着一块木块,右盘是一个砝码)A.天平仍然平 清热燥湿与清热祛湿有什么不同 机械制图第三题,我的思路――通过正平线作投影垂直面,而c点在上前方,且45度所以积聚线朝右上方,再通过实际形状求出c,d.为什么回求二面投影时c点总有点不对 如果,我 不用风,不用阳光,不用油,不用水,不用火,就能发电,给人们用,能算是 一个大的发明吗? 什么是正平线?画法几何与机械制图方面的 土木制图正平线距离投影面是指什么距离 阳光水郡的售楼处地址是?阳光水郡售楼处在什么地方? 陕西阳光分布交丰富的是什么地方 俄罗斯法律规定亲友要对恐怖分子行为担胡万林第一任妻子:从没见其学医 庆幸“神医”胡万林案受害者之父:案情或另德媒调侃奥巴马:没有朋友了 至少你有俄学者:不要对伊核谈判前进步伐抱过高尼日利亚军方打死95名武装分子美国对中国等七国钢铁产品发起贸易救济英媒称美监听35国政要 奥巴马被称愈英国首个“音乐试管婴儿”诞生 狂爱听北京天坛公园频发虐猫事件 已致数十只俄罗斯免费医疗陷入两难境地 有效果难我们继续自己的生活 以为自己痊愈了 8月广州楼市推新速度加快学者们这么说:在文学的世界里,没有偶陕西两铁矿公司员工矿洞内争斗 一方扔男子乘车突发癫痫 公交车队凑4500公务员“末位查究”以正处实职为重点夜间捉蝎子 小伙坠入水窖身亡“西部王朝”霓虹灯广告牌亮整夜财经名嘴叶檀:限购早晚会全面放开孩子的学习区, 也要量身定制!(2)黄菡明日罗浮宫谈幸福
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘