日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

VC用MFC开发的圆形进度条控件

發布時間:2025/3/12 c/c++ 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VC用MFC开发的圆形进度条控件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

DownLoad Src

VC用MFC開發的圓形進度條控件

visualsan@yahoo.cn NUAA zss

在NBA2007游戲里,還有很多科幻電影里,經常可以看到圓形進度條。有的用來顯示導彈發射的準備時間,有的用來倒計時。如圖所示。模仿該樣式,用MFC實現了一個Activex控件。敘述如下:

該控件的編寫思路是:

????根據當前值,計算圓弧角度,然后用CShape(一個圖形繪制類)繪制扇形,對于連續圓弧則可以一次繪制,而對于間斷圓弧,則須根據分段數分別計算角度,然后在分別填充。代碼如下:

void CCircleProgressCtrl::Draw1(CDC *pDC,CRect rt,double r1,double r2)
{
?POINT pt=rt.CenterPoint();
?m_shape.DrawConeGradientSideToSide(pDC,pt,r1,r2,360.0-GetAngle(),GetAngle()-

?m_startAngle,startfgcolor,endfgcolor);
}

void CCircleProgressCtrl::Draw2(CDC *pDC,CRect rt,double r1,double r2)
{
?POINT pt=rt.CenterPoint();
?double st;
?int i;
?int d=GetAngle()/angPerSubs;
?for (i=0;i<d;i++)
?{
??st=angPerSubs*double(i)+m_startAngle;
??m_shape.DrawConeGradientSideToSide(pDC,pt,r1,r2,306.0-st,angPerSubs-

? m_dsubs,startfgcolor,endfgcolor);
?}

}
void CCircleProgressCtrl::Draw3(CDC *pDC,CRect rt,double r1,double r2)
{
?POINT pt=rt.CenterPoint();
?double st;
?int d=GetAngle()/angPerSubs;
?{
?for (int i=0;i<d;i++)
?{
??st=angPerSubs*double(i)+m_startAngle;
??m_shape.DrawConeGradientSideToSide(pDC,pt,r1,r2,306.0-st,angPerSubs-

? m_dsubs,startfgcolor,endfgcolor);
?}
?double la=GetAngle()-double(d)*angPerSubs;
?if(la>m_dsubs)
??? ?m_shape.DrawConeGradientSideToSide(pDC,pt,r1,r2,306.0-st-m_dsubs,-

???? la+m_dsubs,startfgcolor,endfgcolor);
?}

}

運行情況如下:

visualsan@yahoo.cn? NUAA ZSS 2009.9.24

?

控件主要屬性如下:

style:樣式,其值為0,1,2 。0,1表示繪制間斷扇形,2表

????? 示繪制連續扇形。

dot:小數點位數

division:扇形段數

CurrentValue:當前值,若大于最大值,則扇形繪制整園,若

??????小于最小值,則不繪制扇形。

unit:單位,用于輸出顯示,可以選擇不輸出。

maxValue,minValue:最大值,最小值。

startAngle:起始角。

bkcolor:背景顏色

colorBegin:扇形漸變顏色其實值。

colorEnd:扇形漸變顏色終止值。

textColor:文字顏色。

總結

以上是生活随笔為你收集整理的VC用MFC开发的圆形进度条控件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。