全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1320
推到 Plurk!
推到 Facebook!

DELPHI6.0 中的彩蛋

 
flyup
資深會員


發表:280
回覆:508
積分:385
註冊:2002-04-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-10-08 23:31:20 IP:61.225.xxx.xxx 未訂閱
DELPHI6.0 中的彩蛋 打開delphi6.0 選擇help=>about, 按住alt鍵 同時輸入team,你就會看到開發者名單
flyup
資深會員


發表:280
回覆:508
積分:385
註冊:2002-04-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-10-23 14:13:22 IP:61.216.xxx.xxx 未訂閱
DELPHI5.0 中的彩蛋 打開delphi5.0 選擇help=>about, 按住alt鍵 同時輸入team,你就會看到開發者名單
turboted
版主


發表:95
回覆:754
積分:452
註冊:2002-07-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-10-24 00:14:40 IP:61.224.xxx.xxx 未訂閱
剛才試了一下...BCB5 也有喔....真可愛
william
版主


發表:66
回覆:2535
積分:3048
註冊:2002-07-11

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-10-24 09:20:13 IP:147.8.xxx.xxx 未訂閱
more... Alt 'developers' Alt 'jedi' Alt 'quality'
flyup
資深會員


發表:280
回覆:508
積分:385
註冊:2002-04-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-10-26 03:03:26 IP:61.216.xxx.xxx 未訂閱
用Delphi製作“復活節彩蛋” 復活節彩蛋是目前軟體中常有的一個小花招,一般是當使用者按住某個功能鍵再輸入幾個字母就可啟動開發者名單、測試名單、致謝等有關資訊,而且復活節彩蛋一般都隱藏在“關於”對話框中。比如在Delphi 4.0中,打開Help選單,單擊“About”,在對話框中,按住ALT鍵不放,輸入TEAM、DEVELOPERS或QUALITY,都可以看到有關人員名單。在其他的一些軟體中也有這些類似的例子,如VB、Word等。 這東東看似“神祕”,其實實現起來並不復雜。本文給出一個用Delphi實現的例子,並說明實現復活節彩蛋的關鍵技巧。 雖然復活節彩蛋一般在“About”視窗中,但它是可以在任何視窗上實現的。在這里首先要解決的第一個問題就是如何讓視窗接收使用者的鍵盤輸入,且不會啟動視窗中的其他組件。我們知道,在視窗的屬性中有一個KeyPreview,其設定值為False,我們現在將其值改為True。為什麼要這麼做呢?因為這樣可以使視窗在元件之前接收鍵盤輸入,否則鍵盤輸入被元件接收,就無法實現復活節彩蛋。其次,為了防止使用者無意中在鍵盤輸入時啟動彩蛋,一般使用ALT、Shift或Ctrl控制鍵和其它幾個字母的組合作為啟動條件,這樣一般和使用者的鍵盤輸入不會相同。 接下來就是接收使用者的輸入了,將使用者每次輸入的文字保存,如果和事先定義的文字相同則啟動復活節彩蛋。 下面是一個實例: 使用者在視窗上按住ALT鍵不放,輸入“HELLO”,則會出現一個訊息視窗,提示你啟動了復活節彩蛋,具體的彩蛋隨便你設計了。下面是程序代碼: unit Unit1; interface uses Windows, Messages, SysUtils, Classes,Graphics, Controls, Forms, Dialogs; type TForm1 = class(TForm) procedure FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState); private { Private declarations } public { Public declarations } end; var Form1: TForm1; keytp :string; implementation {$R *.DFM} procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState); begin //是否按下ALT鍵,只接收文字 if (shift=[ssALT]) and (key >=$41) and (key<=$5A) then begin keytp:=keytp+chr(key); if keytp='HELLO' then begin showmessage('你啟動了復活節彩蛋'); end; end; end; end. 發表人 - flyup 於 2002/10/26 03:05:27
demon1042001
一般會員


發表:14
回覆:19
積分:6
註冊:2002-06-12

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-04-17 11:35:01 IP:61.220.xxx.xxx 未訂閱
改成這樣會比較順一點    
      if (shift=[ssALT]) and (key >= $41) and (key <= $5A) then
  begin
    keytp := keytp   chr(key);        if (Pos('HELLO', keytp) > 0) then
    begin
      showmessage('你啟動了復活節彩蛋');
      keytp := '';
    end;
  end;    
系統時間:2024-05-21 0:24:59
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!