欧美特黄不卡,涩涩视频在线,成人国产精品一区二区网站,亚洲一区二区三区欧美

當前位置:雨林木風下載站 > 技術開發(fā)教程 > 詳細頁面

靈活運用Delphi制作濺射屏幕

靈活運用Delphi制作濺射屏幕

更新時間:2022-05-14 文章作者:未知 信息來源:網(wǎng)絡 閱讀次數(shù):

精心編寫的WINDOWS程序顯示啟動注意事項,稱之為濺射屏幕(splash screen)。利用一點兒小小的內(nèi)容,即可給程序的顯示添加不少色彩。

  由于工程本身創(chuàng)建程序的主窗口,且啟動濺射屏幕必須在創(chuàng)建主窗口之前出現(xiàn),所以工程文件必須創(chuàng)建自己的啟動屏幕。這意味著用戶必須修改源代碼來創(chuàng)建工程文件,而這通常在DELPHI編程中是不需要的。下面的過程介紹了濺射屏幕的建立過程。

  1、開始一個新的工程。將窗體命名為MainForm,同時將其Caption屬性設置為SplashinDemo。把這個工程保存在一個目錄中,如C:ProjectsSplashin。把MainForm的單元命名為Main,把工程文件命名為Splashin。

  2、在MainForm中插入一個Button組件。將Button的Name屬性改為ExitButton,而將其Caption屬性改為Exit。為ExitButton的OnClick事件創(chuàng)建一個處理器,在過程的begin和end關鍵詞之間插入Close;語句。

  3、選取File|New Form命令,或者單擊New Form速度按鈕。添加一個新的窗體。

  4、將這個窗體的Name屬性改變?yōu)镾plashForm,刪除其Caption屬性。此外,將其BorderStyle屬性改變?yōu)閎snone,同時將BorderIcons下的三個子值設置為False。

  5、保存這個工程。當Delphi提示讀者提供單元文件名時,要確信當前目錄為正確的目錄。為SplashForm的單元文件名輸入Splash。

  6、將SplashForm的Enabled屬性設置為False。這里不想讓用戶能夠給窗口提供鍵盤和鼠標命令,這是極少見的情況之一。在這個例子中,我們想讓程序?qū)plashForm的顯示擁有完全的控制權。

  7、由于窗口沒有輪廓,所以從Additional組件類中插入一個Bevel組件對象。這有助于定義窗口的邊緣。將Bevel1的Align屬性設置為alClient。同時,將對象的Shape屬性改變?yōu)閎sFrame,將其Style屬性改變?yōu)閎sRaised。這些值由使用者來確定。

  8、在SplashForm中插入想使用的組件,在這里不要插入任何按鈕或者其他相互作用的控件。應用程序本身顯示和去除啟動濺射對話框。

  9、選擇Project菜單。高亮顯示Splash工程個彈出式菜單。選擇Options命令。在所產(chǎn)生的Project Options對話框中,選取Forms頁標簽。注意,MainForm和SplashForm位于自動創(chuàng)建的窗體列表中。高亮顯示每個窗體并單擊鼠標右按鈕來將其移動到Available窗體。所有的Delphi窗體在運行時都是在內(nèi)存中自動創(chuàng)建的,這要消耗內(nèi)存和系統(tǒng)資源。在這樣的一個案例中,程序是在運行時創(chuàng)建窗體的,讀者應該從自動創(chuàng)建的列表中刪除窗體。關閉ProjectOptions窗口。

  10、接下來,修改工程的源代碼,以便在顯示主窗口之前顯示濺射對話框。這里需要在工程文件中插入語句,以便與Splash.dpr工程文件相匹配。工程源代碼如下:

  program Project3;

  uses

   Forms,

   main in ‘main.pas‘ {MainForm},

   splash in ‘splash.pas‘ {SplashForm};

  {$R *.RES}

  begin

   SplashForm:=TSplashForm.Create(Application);

   SplashForm.Show;

   SplashForm.Update;

   Application.CreateForm(TMainForm,MainForm);

   SplashForm.Close;

   Application.Run;

  end.

  11、如果這時編譯和運行程序,它就非常快速地顯示和去除啟動濺射對話框,以至用戶可能沒機會見到它。為了強迫對話框保持幾秒鐘的可見時間,請選取程序的MainForm。為窗體的OnCreate命令創(chuàng)建一個處理器。在關鍵詞的前面添加一個名為stopTime的長整型變量。在begin和end之間插入兩個語句:一個為對Windows GetTickCount函數(shù)的調(diào)用。來將stopTime設置為Windows已在運行的秒數(shù);另一個語句為while語句,這個語句另外延遲2秒鐘。程序清單如下:

  unit main;

  interface

  uses

   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

   StdCtrls;

  type

   TMainForm = class(TForm)

    Exitbutton: TButton;

    procedure ExitbuttonClick(Sender: TObject);

    procedure FormCreate(Sender: TObject);

   private

    { Private declarations }

   public

    { Public declarations }

   end;

  var

   MainForm: TMainForm;

  implementation

  {$R *.DFM}

  procedure TMainForm.ExitbuttonClick(Sender: TObject);

  begin

   close;

  end;

  procedure TMainForm.FormCreate(Sender: TObject);

  var

   stopTime:LongInt;

  begin

   stopTime:=GetTickCount div 1000;

   while ((GetTickCount div 1000)<(stopTime+2)) do

   Sleep(1);

  end;

  end.

  12、按F9編譯、運行程序。 

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

主站蜘蛛池模板: 临洮县| 定日县| 丰城市| 肃宁县| 娄底市| 余姚市| 咸阳市| 全南县| 湖州市| 佛坪县| 西青区| 凤凰县| 丰都县| 勃利县| 磐安县| 泽库县| 嘉兴市| 紫金县| 即墨市| 大埔区| 邵东县| 岗巴县| 甘德县| 阜城县| 天门市| 罗江县| 肥城市| 元江| 秭归县| 津市市| 茂名市| 巫山县| 青神县| 临澧县| 奉贤区| 贵州省| 米脂县| 无极县| 新化县| 成都市| 贵南县|