六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

在Delphi中定義自己圖標(biāo)的消息框

[摘要]應(yīng)用程序在運行當(dāng)中經(jīng)常要輸出各種即時信息,Delphi提供了多種形式的消息對話框可以滿足這些要求,盡管可以使用各種標(biāo)志定制一個消息框,但仍不能將自己的圖標(biāo)放在消息框內(nèi),也不能修改其標(biāo)準(zhǔn)行為去創(chuàng)建自己...
應(yīng)用程序在運行當(dāng)中經(jīng)常要輸出各種即時信息,Delphi提供了多種形式的消息對話框可以滿足這些要求,盡管可以使用各種標(biāo)志定制一個消息框,但仍不能將自己的圖標(biāo)放在消息框內(nèi),也不能修改其標(biāo)準(zhǔn)行為去創(chuàng)建自己的消息框,其實通過調(diào)用函數(shù)MessageBoxIndirect()就很容易繞過這些明確的限制,這是一個功能很強(qiáng)、易于使用的函數(shù)。

---- 此函數(shù)在WINDOWS單元里面,文件位于Delphi安裝路徑Source\Rtl\Win里面,需要指出的是,Delphi的原代碼中它的返回值類型是BOOL型,而實質(zhì)上它的返回值應(yīng)為Integer。修改方法:在WINDOWS單元中找到此函數(shù)后,把BOOL改為Integer,共有三處要修改,然后在Delphi安裝路徑Lib中找到WINDOWS.DCU文件,把它改名或者刪除,并把修改后的WINDOWS.PAS源碼復(fù)制到Lib路徑中。

---- 該函數(shù)只有一個參數(shù),類型是TMsgBoxParams,它的結(jié)構(gòu)及說明如下:

tagMSGBOXPARAMSA = packed record
cbSize: UINT;
{數(shù)據(jù)結(jié)構(gòu)的長度}
hwndOwner: HWND;
{所有者窗口句柄}
hInstance: HINST;
{應(yīng)用程序?qū)嵗浔?#125;
lpszText: PAnsiChar;
{在消息框客戶區(qū)內(nèi)顯示的文本}
lpszCaption: PAnsiChar;
{標(biāo)題欄文本}
dwStyle: DWORD;
{確定消息框內(nèi)按鈕和圖符
的數(shù)量及種類的MB_標(biāo)志}
lpszIcon: PAnsiChar;
{從資源文件中取出的一個
圖符資源的名字}
dwContextHelpId: DWORD;
{指定幫助文本的ID號}
lpfnMsgBoxCallback: TPRMsgBoxCallback;
{當(dāng)用戶按下HELP按鈕時調(diào)用的一個回
調(diào)函數(shù)}
dwLanguageId: DWORD;
{顯示在按鈕內(nèi)文本的語言定義}
end;

---- 由于直接使用此函數(shù)比較復(fù)雜,我們可以自定義一個函數(shù)來封裝此函數(shù),對它進(jìn)行簡化,在用法上盡量做到與Delphi的消息框相一致,自定義函數(shù)代碼如下:
function MessageEx
(lText,lCaption:PChar;
lStyle:DWord;lIcon:PChar):Integer;
var
Msg:TMsgBoxParams;
begin
Msg.cbSize:=Sizeof(Msg);
Msg.hwndOwner:=Application.Handle;
Msg.hInstance:=hinstance;
Msg.lpszText:=lText;
Msg.lpszCaption:=lCaption;
Msg.dwStyle:=lStyle;
Msg.lpszIcon:=lIcon;
Msg.dwContextHelpId:=1;
Msg.lpfnMsgBoxCallback:=nil;
Msg.dwLanguageId:=LANG_NEUTRAL;
Result:=MessageBoxIndirect(Msg);
end;

---- 要想在消息框中顯示自己的圖標(biāo),先準(zhǔn)備一個裝有圖標(biāo)的資源文件,加在程序中,如{$R c:\mydir\myres.res},在lStyle參數(shù)里除了所需的MB_標(biāo)志外還要加上MB_USERICON標(biāo)志,并在最后一個參數(shù)里寫上資源文件中圖標(biāo)的名字,如果不想使用自定義的圖標(biāo),可將最后一個參數(shù)設(shè)為nil。函數(shù)的其它用法和返回值的處理與Delphi提供的消息框一樣。
---- 強(qiáng)烈建議把自定義函數(shù)放在一個單元文件里,并把此文件放在Delphi的搜索路徑如Lib下,以后只需要把此單元加在uses語句里,就可以直接使用自定義函數(shù),非常方便。

---- 上述自定義函數(shù)在Delphi4、Delphi5里運行通過。


主站蜘蛛池模板: 日韩去日本高清在线 | 日韩午夜激情视频 | 午夜在线观看免费视频 | 日韩美女在线观看 | 欧美一级一片 | 最近日本韩国观看 | 天天干天天做天天操 | 日韩精品一区二区三区免费视频 | 色综合网天天综合色中文男男 | 午夜国产| 天天干天天做天天射 | 日韩系列第一页 | 亚欧日韩毛片在线看免费网站 | 日日摸狠狠的摸夜夜摸 | 亚洲精品在线看 | 亚洲狠狠成人综合网 | 日韩艳片 | 日本成a人片在线观看网址 日本草草影院 | 日韩中文字幕精品免费一区 | 欧美性色一级在线观看 | 四虎影院永久在线 | 日韩我不卡 | 青青青线在线观看 | 武则天一级淫片免费看 | 日韩一区二区三区视频在线观看 | 午夜不卡av免费 | 婷婷在线网 | 四虎在线影视在线影库 | 亚洲产国偷v产偷v自拍涩爱 | 欧美一级淫片a免费播放口aaa | 色偷偷尼玛图亚洲综合 | 日韩毛片在线 | 亚洲综合图| 亚洲欧美日韩高清一区二区三区 | 亚洲国产成人久久一区久久 | 天天干天天干 | 一区二区在线欧美日韩中文 | 在线视频久 | 午夜在线观看视频在线播放版 | 中文字幕在线免费观看视频 | 四虎成人精品免费影院 |