Delphi程式設計:完全控制桌面的實現 (轉)
Delphi程式設計:完全控制桌面的實現 (轉)[@more@]
田志剛 (2000-10-19)
在 9x中桌面和開始選單可以說是它的一大特色,其實我們可以利用輕易地在應用中實現這種技術 :
新建一個應用程式, 將Form1窗體的BorderStyle屬性設定為bsNone,FormStyle屬性設定為 fsStayOnTop,WindowState屬性設定為wsMaximized。
如有必要可在Form1窗體中放置一個ImageImage1,為它的Picture屬性裝入一幅自己喜愛的影像並將它的Align屬性設定為alClient,Stretch設定為True,使影像拉伸佔滿Form1的客戶區,作為系統背景。
然後,新建一個窗體Form2,將它的BorderStyle屬性設定為bsNone,FormStyle屬性設定為fsStayOnTop。
在Form2內放置一個Speeutton控制元件SpeedButton1和一個PopupMenu控制元件PopupMenu1。
將SpeedButton1的Top屬性設為0,Left屬性設為0,Caption屬性設為 “在這裡”(也可隨你) ,還可設定Glyph屬性為它加上一個影像。雙擊PopupMenu1控制元件,根據自己需要設定各個選單項。
接下來為Form1的OnCreate事件新增如下程式碼:
procedure TForm1.FormCreate(Sender: T);
var
tep:integer;
begin
//用來遮蔽Ctrl+Alt+Del、Ctrl+Tab
功能及螢幕保護程式的執行
tep:=0;
systemparametersinfo(spi_setfasttaskswitch,
1,@tep,0);
systemparametersinfo(spi_screensaverrunning,
1,@tep,0);
end;
為Form1的OnMouseMove事件新增程式碼如下:
procedure TForm1.FormMouseMove
(Sender: TObject; Shift: TShiftState; X,Y: Integer);
begin
//當滑鼠移動到Form1的底部時顯示Form2(即開始選單) ,否則隱藏Form2
if y〉form1.height-30 then
begin
form2.left:=form1.left;
form2.top:=form1.height-30;
form2.width:=form1.width;
form2.height:=30;
form2.show;
end
else
form2.h;
end;
如果你按上面步驟新增了Image1控制元件,請在Form1的Image1的OnMouseMove事件編輯欄內選擇FormMouseMove。
為Form2中的SpeedButton1的OnClick事件新增如下程式碼:
procedure TForm2.SpeedButton1Click
(Sender: TObject);
begin
//當單擊 SpeedButton1按鈕後彈出由PopupMenu1構成的“開始”選單項
PopupMenu1.Popup(form2.left,form2.top);
end;
最後為“退出考勤系統”選單項的OnClick事件新增如下程式碼:
procedure TForm2.a6Click(Sender: TObject);
begin //退出應用程式
application.Tenate;
end;
現在,您就可以執行這個程式看看您的勞動成果了。
田志剛 (2000-10-19)
在 9x中桌面和開始選單可以說是它的一大特色,其實我們可以利用輕易地在應用中實現這種技術 :
新建一個應用程式, 將Form1窗體的BorderStyle屬性設定為bsNone,FormStyle屬性設定為 fsStayOnTop,WindowState屬性設定為wsMaximized。
如有必要可在Form1窗體中放置一個ImageImage1,為它的Picture屬性裝入一幅自己喜愛的影像並將它的Align屬性設定為alClient,Stretch設定為True,使影像拉伸佔滿Form1的客戶區,作為系統背景。
然後,新建一個窗體Form2,將它的BorderStyle屬性設定為bsNone,FormStyle屬性設定為fsStayOnTop。
在Form2內放置一個Speeutton控制元件SpeedButton1和一個PopupMenu控制元件PopupMenu1。
將SpeedButton1的Top屬性設為0,Left屬性設為0,Caption屬性設為 “在這裡”(也可隨你) ,還可設定Glyph屬性為它加上一個影像。雙擊PopupMenu1控制元件,根據自己需要設定各個選單項。
接下來為Form1的OnCreate事件新增如下程式碼:
procedure TForm1.FormCreate(Sender: T);
var
tep:integer;
begin
//用來遮蔽Ctrl+Alt+Del、Ctrl+Tab
功能及螢幕保護程式的執行
tep:=0;
systemparametersinfo(spi_setfasttaskswitch,
1,@tep,0);
systemparametersinfo(spi_screensaverrunning,
1,@tep,0);
end;
為Form1的OnMouseMove事件新增程式碼如下:
procedure TForm1.FormMouseMove
(Sender: TObject; Shift: TShiftState; X,Y: Integer);
begin
//當滑鼠移動到Form1的底部時顯示Form2(即開始選單) ,否則隱藏Form2
if y〉form1.height-30 then
begin
form2.left:=form1.left;
form2.top:=form1.height-30;
form2.width:=form1.width;
form2.height:=30;
form2.show;
end
else
form2.h;
end;
如果你按上面步驟新增了Image1控制元件,請在Form1的Image1的OnMouseMove事件編輯欄內選擇FormMouseMove。
為Form2中的SpeedButton1的OnClick事件新增如下程式碼:
procedure TForm2.SpeedButton1Click
(Sender: TObject);
begin
//當單擊 SpeedButton1按鈕後彈出由PopupMenu1構成的“開始”選單項
PopupMenu1.Popup(form2.left,form2.top);
end;
最後為“退出考勤系統”選單項的OnClick事件新增如下程式碼:
procedure TForm2.a6Click(Sender: TObject);
begin //退出應用程式
application.Tenate;
end;
現在,您就可以執行這個程式看看您的勞動成果了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-987274/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 設計模式、用Delphi實現---->Builder模式 (轉)設計模式UI
- Delphi實用程式設計經驗二 (轉)程式設計
- 設計模式、用Delphi實現---->Singleton 模式 (轉)設計模式
- Delphi實用程式設計經驗二則 (轉)程式設計
- Delphi托盤程式設計實戰演練 (轉)程式設計
- Delphi之快速設計(程式設計篇) (轉)程式設計
- Delphi程式設計之--慣用法 (轉)程式設計
- 實現控制元件的移動、改變大小(DELPHI實現) (轉)控制元件
- Delphi資料庫程式設計教程(九) (轉)資料庫程式設計
- 用Delphi編寫塗鴉桌面的小程式 (轉)
- Delphi設計模式-Abstract Factory (轉)設計模式
- 談Delphi程式設計中資原始檔的應用 (轉)程式設計
- 用Delphi進行OpenGL程式設計學習心得 (轉)程式設計
- Delphi 中物件導向程式設計之我見 (轉)物件程式設計
- DELPHI下的多執行緒程式設計(1) (轉)執行緒程式設計
- DELPHI下的多執行緒程式設計(2) (轉)執行緒程式設計
- Delphi COM程式設計介紹程式設計
- Singleton模式之Delphi實現 (轉)模式
- java 介面,介面的特性,介面實現多型,面向介面程式設計Java多型程式設計
- DELPHI也可以實現控制元件陣列,用定義陣列變數實現控制元件陣列 (轉)控制元件陣列變數
- spring mvc兩大核心技術:1控制反轉 2面向切面的程式設計SpringMVC程式設計
- 用delphi製作無介面的activex控制元件控制元件
- Linux守護程式的程式設計實現(轉)Linux程式設計
- Delphi建立ActiveX控制元件,實現安全介面及無介面程式碼控制元件
- 在Delphi中捕獲控制檯程式的輸出 (轉)
- 面向方面的程式設計程式設計
- Delphi中停靠技術的實現 (轉)
- 設計模式、用Delphi描述-->Lock pattern (轉)設計模式
- 在Delphi程式設計中獲取作業系統資訊 (轉)程式設計作業系統
- 座標曲線的程式設計實現 (轉)程式設計
- 怎樣在遊戲設計製作中實現指令碼控制(轉)遊戲設計指令碼
- 程式設計技術點滴一(Delphi)程式設計
- Delphi趣味程式設計例項三則程式設計
- [.net 物件導向程式設計深入](31)實戰設計模式——使用Ioc模式(控制反轉或依賴注入)實現鬆散耦合設計(1)物件程式設計設計模式依賴注入
- 面向介面的程式設計+MVC程式設計MVC
- 用Delphi實現遠端螢幕抓取 (轉)
- 兩種Delphi實現Singleton模式方法 (轉)模式
- 一個C++程式設計師的Delphi學習筆記 (轉)C++程式設計師筆記