亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Delphi > 正文

用API函數(shù)在DELPHI中實現(xiàn)“非典型”窗體

2019-11-18 18:34:42
字體:
供稿:網(wǎng)友
 用API函數(shù)在DELPHI中實現(xiàn)“非典型”窗體
    現(xiàn)在的一些共享軟件特別是一些多媒體播放器軟件為了吸引用戶,很注重程序界面的設計。實際上,我們使用API函數(shù)也可以實現(xiàn)那些好看又另類的效果。
    1.異形窗體
    窗體只能是方的嗎?不是,還可以有其他形狀。這要用到兩個Win32 API函數(shù)。首先用CreateRoundRectRgn()函數(shù)在窗體內(nèi)界定一個橢圓形區(qū)域。這里所指的區(qū)域(region)是一個特殊的API對象,我們可以在區(qū)域內(nèi)部進行填充和剪裁等操作,從而定義窗體的外部特征。然后調(diào)用SetWindowRgn()函數(shù)繪制,更進一步還可以再用CombineRgn()函數(shù)來合并多個區(qū)域,例如在Delphi的單元文件中加入以下代碼:
    PRocedure TForm1.FormCreate(Sender: TObject);
    var
      FRegion1:THandle;
      FRegion2:THandle;
    begin
      FRegion1:=CreateRoundRectRgn(20,20,200,200,300,300);//界定一個橢圓區(qū)域
      FRegion2:=CreateRectRgn(170,170,400,400);//界定一個矩形區(qū)域
      CombineRgn(FRegion1,FRegion1,FRegion2,RGN_OR);//將兩個區(qū)域連接起來
      SetwindowRgn(handle,FRegion1,True);//對連接后的區(qū)域進行繪制
    end;
    程序段中的CreateRoundRectRgn()函數(shù)用來創(chuàng)建一個圓角矩形區(qū)域,它的原型為:
    HRGN CreateRoundRectRgn(
    int nLeftRect, // 左上角的X坐標
    int nTopRect, // 左上角的Y坐標
    int nRightRect, // 右下角的X坐標
    int nBottomRect, // 右下角的Y坐標
    int nWidthEllipse, //圓角所在橢圓的寬
    int nHeightEllipse  // 圓角所在橢圓的高
    );
    其他圖形如多邊形、橢圓形等都有對應的API函數(shù),它們的原型如下:
    HRGN CreateEllipticRgn(int nLeftRect,int nTopRect,int nRightRect,int nBottomRect)
    HRGN CreateEllipticRgnIndirect( CONST RECT *lprc)
    HRGN CreatePolygonRgn(CONST POINT *lPPT,int cPoints, int fnPolyFillMode)
    HRGN CreatepolypolygonRgn(CONST POINT *lppt,CONST INT *lpPolyCounts,int nCount,int fnPolyFillMode)
    HRGN CreateRectRgn(int nLeftRect,int nTopRect,int nRightRect,int nBottomRect)
    HRGN CreateRectRgnIndirect(CONST RECT *lprc)
    以上函數(shù)的參數(shù)很好理解,用來說明圖形內(nèi)置矩形的坐標或指向該矩形。重點來看一下另外兩個函數(shù):
    函數(shù)原型:SetWindowRgn(
              HWND hWnd,         //當前窗體的句柄
              HRGN hRgn,          //當前區(qū)域的句柄
              BOOL bRedraw,      //重繪標志
              )
    函數(shù)功能:該函數(shù)把已創(chuàng)建的區(qū)域的句柄作為參數(shù)傳遞給當前窗體的句柄,并在該區(qū)域范圍內(nèi)繪制窗體;
    函數(shù)原型:CombineRgn(
              HRGN hrgnDest,  // 連接目的區(qū)域的句柄
              HRGN hrgnSrc1,  // 第一個連接源區(qū)域的句柄
              HRGN hrgnSrc2,  // 第二個連接源區(qū)域的句柄
              int fnCombineMode  // 連接模式
              )
    函數(shù)功能:該函數(shù)將兩個區(qū)域合并為一個新的區(qū)域,其中連接模式可取以下值:
    參數(shù)值          作用
    RGN_AND         由區(qū)域1與區(qū)域2的共有部分即交集創(chuàng)建新的區(qū)域
    RGN_COPY        創(chuàng)建區(qū)域1的副本作為新的區(qū)域
    RGN_DIFF        連接屬于區(qū)域1但不屬于區(qū)域2的部分為新的區(qū)域
    RGN_OR          連接區(qū)域1和區(qū)域2的所有部分即并集
    RGN_XOR。     連接區(qū)域1和區(qū)域2的所有部分即并去掉共有部分
    2.空心窗體
    這種窗體的特點是好端端的一個窗體,中間被挖了一部分。例如在Delphi的單元文件中加入以下代碼:
    procedure TForm1.FormCreate(Sender: TObject);
    var
      FRegion3:THandle;
    begin
      Canvas.Font.Name:='華文行楷';//設置字體 
      Canvas.Font.Size:=100;//設置字號
      BeginPath(Canvas.Handle); //得到vanvas上繪制的輪廓
      TextOut(form1.Canvas.Handle,0,20,'程序春秋',8);//將“程序春秋”四個字所占區(qū)域摳掉
      EndPath(Canvas.Handle);
      FRegion3:=PathToRegion(Canvas.Handle);//將以上區(qū)域賦給窗體
      SetwindowRgn(Handle,FRegion3,True);//開始繪制
    end;
    這里主要用到了三個API函數(shù):
    函數(shù)原型:BOOL BeginPath(HDC hdc  //設備環(huán)境的句柄)
    函數(shù)功能:開始接收當前設備環(huán)境的路徑軌跡;
    函數(shù)原型:BOOL EndPath(HDC hdc  //設備環(huán)境的句柄) 
    函數(shù)功能:停止接收并將已接收的路徑軌跡賦給當前設備環(huán)境的句柄
    函數(shù)原型  BOOL TextOut(
              HDC hdc, // handle of device context
              int nXStart, // 起始位置的X坐標 
              int nYStart, // 起始位置的Y坐標
              LPCTSTR lpString, // 字符串地址
              int cbString  //字符串所包含字符數(shù)(注意一個漢字占兩個字符)
              )
    函數(shù)功能:在指定位置繪制給定字符串。
    小結:學會熟練使用API進行編程,是一項很重要的技能,有時可以達到意想不到的效果。以上幾種技巧旨在拋磚引玉,希望大家充分運用各種技巧,發(fā)揮自己想像,設計出更炫的窗體,美化自己的程序

上一篇:Delphi組件與屬性編輯器

下一篇:Delphi程序設計之--慣用法

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網(wǎng)友關注

亚洲激情视频在线播放| 国产欧美激情| 精品国产一区一区二区三亚瑟| 久久国产精品色婷婷| 91成人入口| 亚洲黄色小说在线观看| 国产在线播放观看| 国产精品久久久久一区二区| 亚洲裸体俱乐部裸体舞表演av| 男人av资源站| 在线观看成人小视频| 精品视频免费在线观看| 久久久久久久久久久久久久久久久久| 五月天婷婷社区| 欧美日韩中文字幕在线播放| 蜜臀av午夜精品| 高清hd写真福利在线播放| 亚洲福利在线视频| 日韩深夜视频| 国精产品一品二品国精品69xx| 久久蜜桃精品| gogo大胆日本视频一区| 日本在线观看中文字幕| 免费h在线看| 午夜精品久久久久久久久久久久久蜜桃| 在线观看福利片| www精品美女久久久tv| 天天插天天操| 长河落日免费高清观看| 免费看日b视频| 欧美日韩国产精选| 国产视频aaa| 色先锋影音av| 91精品国产91久久久久久久久| 婷婷开心激情网| 亚洲日本一区二区| av免费一区二区| 欧美精品一区二区三区三州| 国产精品成人久久久| 欧美亚日韩国产aⅴ精品中极品| 国产91对白刺激露脸在线观看| 日本不卡一二三| 性爱视频日本| 精品久久网站| 丁香六月久久综合狠狠色| 国产 欧美 精品| xfplay爱情电影网love| 成人video亚洲精品| 飘雪影视在线观看免费观看| 91精品国产综合久久国产大片| 久久日韩粉嫩一区二区三区| 爱看av在线入口| 激情网址大全| 四虎永久网址| 黄页免费在线| 永久免费av无码网站性色av| 极品日韩久久| 久久久久久免费观看| 91啦中文在线| 青青草国产在线播放| 国产精品成人**免费视频| 99在线热播精品免费| 国产91色在线|免| 免费看片91| 欧美精品v国产精品v日韩精品| 国产成a人亚洲| 夜夜骚av一区二区三区| 久久mv成人精品亚洲动漫| 精品少妇一区二区三区| 青青草原国产在线视频| 国产精品久久久久久久久图文区| 捆绑调教日本一区二区三区| 日韩欧美视频网站| free性护士videos欧美| 最新日韩精品| 蜜乳av一区| 岛国av一区二区| 中文字幕在线观看高清| 国产福利视频在线| 亚洲一二三av| 91精品欧美久久久久久动漫| 亚洲第一在线播放| 四季av一区二区三区免费观看| 国产精品免费免费| 青青草精品毛片| 婷婷激情综合网| 国产精品高潮呻吟久久久久| 16—17女人毛片毛片| 成人爽a毛片免费啪啪| 青草av.久久免费一区| 欧美大喷水吹潮合集在线观看| 国产免费亚洲高清| 欧美色第一页| 日韩精品成人一区二区在线| 久久精品成人欧美大片| 日韩av在线直播| 一本到12不卡视频在线dvd| 欧美亚洲高清一区| 激情伊人五月天| 国产探花视频在线观看| 精品亚洲一区二区三区四区五区高| 成人综合社区| 久播影院第一理论片| 99re成人精品视频| 榴莲视频成人app| 国产中文在线播放| 图片区小说区亚洲| 熟妇人妻va精品中文字幕| 亚洲丝袜在线视频| 91在线公开视频| a级毛片免费高清视频| 欧美在线中文字幕| 亚洲国产精品久久久| 欧美孕妇孕交xxⅹ孕妇交| 91青青在线视频| 偷偷看偷偷操| 免费高清在线| 一区二区三区精品视频| 婷婷中文字幕在线观看| 极品人妻一区二区| jvid福利写真一区二区三区| 青草成人免费视频| 深爱五月激情五月| 中文字幕一区免费在线观看| 一区二区三区四区视频在线| 毛片视频免费| 国产91精品青草社区| 91九色蝌蚪嫩草| 国产麻豆精品久久一二三| 成人毛片一区二区三区| 国产精品久久久久久久浪潮网站| 高清国产一区二区三区| 中文字幕无乱码| 全球中文成人在线| 欧美午夜久久| 亚洲巨乳在线观看| 欧美日韩在线观看视频小说| 成人欧美一区| 欧美精品色一区二区三区| 亚洲精品无码一区二区| 女人裸体免费网站| 一级片手机在线观看| 美女精品一区最新中文字幕一区二区三区| 国产免费内射又粗又爽密桃视频| 国产日韩精品一区二区三区| 少妇高潮毛片色欲ava片| 国产 日韩 欧美 综合| 91精品蜜臀在线一区尤物| www.97超碰| www日韩中文字幕在线看| 91九色国产社区在线观看| 欧美极度另类| 中文字幕国产传媒| www.国产毛片| 依依成人在线| jizz欧美性11| 精品1区2区3区| www.狠狠| 92国产精品久久久久首页| 日韩美女视频一区二区| 国产一级片麻豆| 国产精品三级美女白浆呻吟| 国产91九色蝌蚪| av在线第一页| 国产欧美久久一区二区三区| 久久精品免费看| 免费男女羞羞的视频网站在线观看| 欧美精品国产一区| 日韩视频在线观看| 亚洲国产午夜精品| 97超碰国产一区二区三区| 国内精品久久久久久久果冻传媒| 国产一级黄色av| 美女视频免费观看网站在线| 成人激情开心网| 欧美成人激情在线| 精品国产自在久精品国产| 精品国精品自拍自在线| 欧美日韩亚洲精品内裤| av网站免费线看精品| 97精品人妻一区二区三区在线| 成人看片黄a免费看在线| 蜜桃传媒麻豆第一区在线观看| 欧美精品一区二区三区蜜桃视频| 亚洲电影在线| 成人免费毛片高清视频| 免费a在线观看| 青青草视频在线青草免费观看| 高清国语自产拍免费一区二区三区| 96精品视频在线| 在线免费一区三区| 美女福利视频网| 国内毛片久久| 亚洲av无码一区二区三区人| 91丨九色丨国产在线| 777精品视频| 成人国内精品久久久久一区| 国产aⅴ综合色| 欧美日韩一区二区三区四区五区| 在线免费观看视频网站| 四虎影院影音| 你懂的网站在线| av不卡在线播放| 中文字幕佐山爱一区二区免费| 91在线视频观看免费| 在线永久看片免费的视频| 国产视频一区二区在线播放| 亚洲av激情无码专区在线播放| 中国女人特级毛片| 91av在线免费观看| 日日草天天干| 欧美久久综合网| 永久看片925tv| 国产精品日韩精品在线播放| 欧美自拍偷拍午夜视频| 欧美性视频一区二区三区| fc2ppv在线播放| 亚洲精品免费一区二区三区| 国产美女精品人人做人人爽| 久久久久久欧美精品色一二三四| 亚洲精品久久在线| 永久免费av在线| 欧美精品啪啪| 丰满岳乱妇一区二区三区| 免费看av软件| www.国产视频.com| 中文字幕在线观看一区二区三区| 亚洲第一偷拍| 国产激情一区二区三区在线观看| 亚洲第一页在线视频| 国产精品va视频| 一区二区三区四区欧美| 大陆极品少妇内射aaaaa| 中国一级特黄录像播放| 五十路六十路七十路熟婆| 色综合久久一区二区三区| 91精品国产99久久久久久红楼| 成人h视频在线观看播放| heyzo视频在线播放| 亚洲精品国产欧美在线观看| 亚洲人成在线影院| 日日骚av一区二区| 欧美一区二区三区另类| 中文字幕日本人妻久久久免费| 精品三区视频| 婷婷亚洲五月色综合| 九九热精品在线| 激情视频网站在线观看| 超碰97在线免费| 妖精视频一区二区三区免费观看| 亚洲 小说 欧美 激情 另类| 26uuu另类欧美亚洲曰本| 亚洲国产婷婷| 国产午夜精品久久久久久久久| 黄色直播在线| 91精品国产91久久久久久黑人| 韩日视频一区| 中文字幕在线亚洲三区| 扒开jk护士狂揉免费| 日本免费网址| 中文字幕精品久久| 国产极品视频在线观看| 色哟哟视频在线| 亚洲国产精品第一页| 日韩精品福利网| 成人免费在线视频网| 久久久亚洲影院你懂的| 亚洲一区色图| 久草免费在线观看视频| 97久久天天综合色天天综合色hd| 中文字幕va一区二区三区| 精品人妻一区二区三区三区四区| 久久精品日产第一区二区三区精品版| 国产精品无码电影| 国产精品第72页| 黑人一区二区| 国产免费不卡视频| 在线电影av不卡网址| 欧美69精品久久久久久不卡| 精品入口蜜桃| 蜜桃视频一日韩欧美专区| aa亚洲婷婷| 91青青草视频| 91美女在线视频| eeuss网址直达入口| 日韩精品久久久久久久| 国产一区二区成人久久免费影院| 99久久精品免费看国产免费软件| 99久久免费精品国产72精品九九| 男女免费观看在线爽爽爽视频| 色视频在线观看在线播放| 国产亚洲欧美久久久久| 激情欧美日韩一区二区| 制服丝袜亚洲播放| 91超碰rencao97精品| 国产精品成av人在线视午夜片| 一区二区三区四区在线不卡高清| 中文字幕一区二区三区四区视频| 91高清在线免费观看| 国产精品青草综合久久久久99| 亚洲jizzjizz日本少妇| 久久久久久亚洲精品不卡4k岛国| 欧美交a欧美精品喷水| 亚洲在线www| 欧美18—20岁hd第一次| 久久久久久久久久久久91| 91成人精品观看| 色欲欲www成人网站| 成人免费在线观看视频网站| 精品在线视频一区二区| 亚洲成av人片一区二区密柚| 超碰国产一区| 欧美高跟鞋交xxxxhd| 丰满的亚洲女人毛茸茸| 91久久精品一区二区别| 狠狠鲁男人天堂| 国产精品视频区1| 亚洲精品国产精品国自产观看浪潮| 免费毛片一区二区三区久久久| 欧美一区综合| 曰韩少妇与小伙激情| 色婷婷在线视频观看| 国产一区二区三区视频免费观看| 日韩欧美猛交xxxxx无码| 美女色狠狠久久| 久久精品国产亚洲av无码娇色| 这里只有精品丝袜| 日本午夜视频|