利用Dephi5編寫控制皮膚程式 (轉)
利用Dephi5編寫控制皮膚
在中提供了一個控制皮膚視窗,一個控制皮膚視窗就象Windows的控制中心。
在視窗中有諸如 “”、“多”圖示,透過雙擊這些不同的圖示,就可以開啟不
同的控制皮膚程式檢視系統狀況和對系統進行設定了。
如何在控制皮膚中新增自己的控制皮膚程式呢?首先來了解以下控制皮膚程式的原
理。一個控制皮膚程式就是一個動態連線庫(DLL)。在庫中必須建立一個名稱為
CPLApplet的輸出回撥,在函式中加入對Windows的響應程式碼,編輯成動態連線
庫檔案。庫檔案將庫檔案的副檔名改為CPL,然後將檔案複製到 WindowsSystem子目錄
下,系統在啟動時會自動搜尋副檔名為Cpl的檔案。搜尋到檔案之後,系統會裝入檔案
並呼叫CPLApplet函式,這時函式中的程式碼就開始工作,彈出視窗等操作。
是不是很複雜,你必須對於系統呼叫DLL的工作原理和回撥函式有比較深刻的瞭解
才能編寫控制皮膚程式,而且必須無法在的整合視窗中,而必須先編譯
好以後複製到 WindowsSystem 目錄下觀察執行效果,然後再對源程式除錯,再編譯。
幸好在5中提供了方便建立控制皮膚程式的方式。在Delphi5的選單中選
File | New ,在New Items視窗中會看到有一個 Control Panel Application 選項,
點選這個選項,然後再按OK鍵,就可以建立一個基本的控制皮膚程式。在這個程式的
工程檔案包中包含兩個檔案,一個是工程檔案 Project1.dpr。按Ctrl+F12開啟
View Units視窗開啟Project1,可以看到程式碼的第一行是library Project1; ,另外
在程式碼中還有一行:exports CPlApplet; ,這說明程式已經自動建立了輸出回撥函式。
另一個檔案是控制皮膚程式控制檔案(姑且這麼稱呼它)Unit1.pas。這個程式程式碼
中建立了一個TAppletModule類,這個類就是控制皮膚程式控制類。同時程式還會建立
一個除錯、控制視窗AppletModule1。在視窗左邊的列表框中有一項 AppletModule1,
右鍵點選該項,在彈出選單中選Install Control Panel Applet項編譯並控制皮膚
程式。如果安裝成功,再右鍵點選AppletModule1,在彈出選單中選Launch Control
Panel執行控制皮膚。怎麼樣?在控制皮膚中是不是增加了一個 AppletModule1項?
當然,現在這個程式還很簡單,沒有漂亮的圖示,雙擊它也沒有反應,在下面我就要
介紹對這個程式的擴充套件。
首先要讓它響應滑鼠的雙擊。首先按Shift+F12鍵,在View Form視窗中選擇AppletModule1
開啟除錯、控制視窗。在視窗左邊的 Inspector中點選Events頁面,在Events列表
中的第一項就是OnActive事件,你也許猜到了,對,這個事件就是控制皮膚程式被啟用
(也就是你雙擊控制皮膚中的程式圖示時發生的事件)時產生的事件。
下面來編寫程式碼響應事件。在Delphi選單中選 File | New,在New Items視窗中選
Form項新增一個新的視窗。將檔案儲存為Unit2.pas,然後在Unit1.pas中新增
Uses Unit2; (該句要新增在implementation後面),在Events列表中雙擊OnActive
事件,在事件中新增如下程式碼:
procedure TAppletModule1.AppletModuleActivate(Sender: TObject;
Data: Integer);
begin
with TForm2.Create(Application) do begin
if ShowModal = mrOK then
Free;
end;
end;
最後記住將Project1中的Application.CreateForm(TForm2, Form2); 行給刪除掉。
接下來設定程式圖示,點選AppletModule1的Object Inspector視窗,點選Properties
頁面,選AppletIcon項,就可以為控制皮膚程式新增圖示了。改變Caption項的值就可以為
程式設定不同的標題。
圖示和程式標題設定好以後,再重複上面的Install Control Panel Applet編譯並
安裝程式,然後再選Launch Control Panel執行。雙擊新建立的程式圖示,看看,建立
一個控制皮膚程式就是這麼簡單!
當然,這只是一個最簡單的控制皮膚程式,它只是響應OnActive事件並彈出一個視窗,
在OnActive事件中的Data是一個比較重要的引數,它是控制皮膚程式呼叫程式傳遞給程式
的引數,利用這個引數可以對不同的呼叫彈出不同的視窗,例如你要建立一個時間/日期
調整控制程式,你可以做以下程式碼:
procedure TAppletModule1.AppletModuleActivate(Sender: TObject;
Data: Integer);
begin
with TForm2.Create(Application) do begin 下是虛擬碼:
Case Data of
1:DoChangeTime; 示改變系統時間視窗
2:DoChangeDate; 示改變系統日期視窗
end;
end;
end;
這樣當外部程式以不同的引數呼叫程式時,程式能彈出不同的視窗,例如 RunDll32 app.cpl 1
就將彈出改變系統時間視窗。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-987995/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- nvidia控制皮膚怎麼調 nvidia控制皮膚怎麼設定
- win10控制皮膚在哪裡 控制皮膚快捷鍵的開啟方式Win10
- 讓Windows XP的控制皮膚“屬於自己”(轉)Windows
- 【隨便寫寫】存一下皮膚程式碼
- win10顯示卡控制皮膚在哪_win10顯示卡控制皮膚怎麼開啟Win10
- win10撥出控制皮膚方法 win10怎麼撥出控制皮膚Win10
- windows10控制皮膚在哪裡 win10控制皮膚怎麼調出來WindowsWin10
- win10控制皮膚在哪裡 win10如何開啟控制皮膚的方法Win10
- win10控制皮膚在哪裡 win10控制皮膚開啟的方法教程Win10
- 利用VB編寫螢幕保護程式 (轉)
- 利用Java編寫HTML檔案分析程式(轉)JavaHTML
- win10 怎麼開啟控制皮膚_win10系統控制皮膚在哪裡Win10
- Windows 98 將控制皮膚新增到開始選單(轉)Windows
- win10控制皮膚指令大全_win10用命令開啟控制皮膚操作方法Win10
- win10如何開啟java控制皮膚_win10怎麼開啟java控制皮膚Win10Java
- win10控制皮膚怎麼新增到桌面_win10控制皮膚要如何放在桌面Win10
- win10控制皮膚快捷鍵是什麼 快速開啟控制皮膚的具體方法Win10
- 為什麼開啟控制皮膚會閃退 win10控制皮膚閃退的方法Win10
- nvidia控制皮膚打不開 nvidia控制皮膚點了沒反應win10Win10
- Win10系統如何開啟控制皮膚 win10開啟控制皮膚的方法Win10
- Win10如何開啟nvdia顯示卡控制皮膚_win10開啟nvdia顯示卡控制皮膚教程Win10
- win10怎麼快速開啟控制皮膚 win10快速開啟控制皮膚的方法Win10
- win10的控制皮膚在哪裡開啟 win10的控制皮膚怎麼開啟Win10
- nvidia控制皮膚沒有顯示設定 nvidia控制皮膚沒有顯示選項
- win10怎麼樣開啟控制皮膚 win10開啟控制皮膚操作方法Win10
- win10控制皮膚應用打不開怎麼辦 win10控制皮膚程式無法開啟解決方法Win10
- WDCP控制皮膚安裝解除安裝
- c# 容器控制元件panel皮膚C#控制元件
- Delphi皮膚控制元件去NAG提示控制元件
- win10控制皮膚打不了怎麼辦_win10控制皮膚打不了如何處理Win10
- win10怎麼在桌面顯示控制皮膚_win10怎麼調控制皮膚到桌面Win10
- win10控制皮膚命令列指令大全_win10怎麼通過命令開啟控制皮膚Win10命令列
- win10控制皮膚命令列指令大全_win10怎麼透過命令開啟控制皮膚Win10命令列
- win10控制皮膚怎麼顯示在桌面 win10桌面顯示控制皮膚的方法Win10
- 如何使用Media Encoder中的「編碼」皮膚和「佇列」皮膚詳解佇列
- win10控制皮膚內無windowsup如何恢復_win10控制皮膚找不到windowsup解決方法Win10Windows
- nvidia控制皮膚怎麼設定玩遊戲最好 nvida控制皮膚怎麼調玩遊戲效能最佳遊戲
- win10控制皮膚在哪裡 win10控制皮膚怎麼調出來多種方法介紹Win10