資源簡介
多個工業用的儀表控件:用于vc開發的儀表控件,有源代碼.

代碼片段和文件信息
/***********************************************************************
*?Copyright?(c)?2007*?湖南威勝電子?All?rights?reserved.*?
*?ATTRIBUTE:????????一種圓盤儀表,用于數值顯示
*?FILE?NAME: DiscMeter.h
*?FILE?ID: METERCONTROL-DISCMETER-H
*?ABSTRACT: WF9800一體化系統數值顯示專用?
*?CURRENT?VERSION: V1.0
*?AUTHOR: 戚高
*?CONTECT: successq_g@163.com
*?BUILD?DATA: 06/12/2007
*?COMPLETION?DATE: 06/12/2007
*?PRE-VERSION: NONE
*?PRE-AUTHOR: NONE
*?PRE-COMPLETION?DATE:
*?NOTE: ????????????未經授權請不要作為商業用途,或者如果您要作為商業
????????????????????用途,請聯系作者
***********************************************************************/
#include?“stdafx.h“
#include?“DiscMeter.h“
#include?
CDiscMeter::CDiscMeter()
{
m_BackColor?=?RGB(33?177?138);
m_dMinValue?=?0.00f; //表量程初始值
m_dMaxValue?=?1000.00f; //表量程終值
m_nTicks?=?6; //大格個數
m_nSubTicks?=?5; //大格中小格個數
m_dCurrentValue?=?100.00f;
memset(m_strUnits?0?sizeof(m_strUnits));
strcpy(m_strUnits?“kW“); //表單位
}
CDiscMeter::~CDiscMeter()
{
}
BEGIN_MESSAGE_MAP(CDiscMeter?CStatic)
//{{AFX_MSG_MAP(CDiscMeter)
ON_WM_SIZE()
ON_WM_PAINT()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
void?CDiscMeter::OnSize(UINT?nType?int?cx?int?cy)?
{
CStatic::OnSize(nType?cx?cy);
ReconstructControl();
}
void?CDiscMeter::OnPaint()?
{
CPaintDC?dc(this);?//?device?context?for?painting
//?獲得控件區域
GetClientRect?(&m_rectCtrl);
CDiscMemDC?memDC(&dc?&m_rectCtrl);
//繪制儀表盤
if?(m_dcMeterPlate.GetSafeHdc()?==?NULL?||?(m_bitmapMeterPlate.m_hobject?==?NULL))
{
m_dcMeterPlate.CreateCompatibleDC(&dc);
m_bitmapMeterPlate.CreateCompatibleBitmap(&dc?m_rectCtrl.Width()? m_rectCtrl.Height())?;
m_pbitmapOldMeterPlate?=?m_dcMeterPlate.Selectobject(&m_bitmapMeterPlate)?;
DrawMeterBackground(&m_dcMeterPlate?m_rectCtrl);
}
memDC.BitBlt(0?0?m_rectCtrl.Width()?m_rectCtrl.Height()?
???????????&m_dcMeterPlate?0?0?SRCCOPY);
DrawNeedle(&memDC);
DrawValue(&memDC);
}
//繪制儀表背景
void?CDiscMeter::DrawMeterBackground(CDC?*pDC?CRect?&rect)
{
CPen???m_penMeter?*pOldPen;
CBrush?m_brushBack?*pOldBrush;
pDC->SetBkColor(m_BackColor);
m_brushBack.CreateSolidBrush(m_BackColor);
pOldBrush?=?(CBrush?*)pDC->Selectobject(&m_brushBack);
pDC->FillRect(rect?&m_brushBack);???//繪制背景
pDC->Rectangle(rect);????????????????//繪制一個邊框
pDC->Selectobject(pOldBrush);
m_brushBack.Deleteobject();
m_penMeter.CreatePen(PS_SOLID?2?RGB(?0?0?0));
pOldPen?=?(CPen?*)pDC->Selectobject(&m_penMeter);
pDC->SetTextColor(RGB(?0?0?0));
pDC->SetBkMode(TRANSPARENT);?
int?nTmpLong?=?__min(rect.Width()?rect.Height());
m_ptMeterCenter.x?=?nTmpLong?/?2;?//點中心x坐標
m_ptMeterCenter.y?=?nTmpLong?/?2;?//點中心y坐標
m_nRadiusframe?=?nTmpLong?/?2?-?3;
//繪制儀表圓盤
CRect?rectRound(m_ptMeterCenter.x?-?m_nRadiusframe?
m_ptMeterCenter.y?+?m_nRadiusframe
m_ptMeterCenter.x?+?m_nRadiusframe?
m_ptMeterCenter.y?-?m_nRadiusframe
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????53880??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\Debug\DiscMeter.obj
?????文件?????105622??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\Debug\StdAfx.obj
?????文件?????118858??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\Debug\testMeter.exe
?????文件??????13994??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\Debug\testMeter.obj
?????文件?????328704??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\Debug\testMeter.pdb
?????文件???????2548??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\Debug\testMeter.res
?????文件??????25984??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\Debug\testMeterDlg.obj
?????文件?????364544??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\Debug\vc60.pdb
?????文件??????11965??2007-12-12?21:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\DiscMeter.cpp
?????文件???????4711??2007-12-26?20:42??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\DiscMeter.h
?????文件???????3633??2007-12-26?20:40??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\ReadMe.txt
?????文件???????1078??2007-12-26?20:40??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\res\testMeter.ico
?????文件????????401??2007-12-26?20:40??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\res\testMeter.rc2
?????文件????????687??2007-12-26?20:41??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\Resource.h
?????文件????????211??2007-12-26?20:40??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\StdAfx.cpp
?????文件???????1054??2007-12-26?20:40??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\StdAfx.h
?????文件??????20772??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\testMeter.aps
?????文件???????1155??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\testMeter.clw
?????文件???????2105??2007-12-26?20:40??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\testMeter.cpp
?????文件???????4343??2007-12-26?21:18??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\testMeter.dsp
?????文件????????543??2007-12-26?20:40??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\testMeter.dsw
?????文件???????1357??2007-12-26?20:40??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\testMeter.h
?????文件??????91136??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\testMeter.ncb
?????文件??????49664??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\testMeter.opt
?????文件???????1893??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\testMeter.plg
?????文件???????5293??2007-12-26?20:41??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\testMeter.rc
?????文件???????4639??2007-12-26?20:43??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\testMeterDlg.cpp
?????文件???????1411??2007-12-26?20:43??經典的工控圖形控件的VC源代碼\圓盤儀表圖形控件\testMeterDlg.h
?????文件??????65221??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤溫度儀表控件\Debug\RoundMeter.obj
?????文件?????105622??2008-06-04?20:44??經典的工控圖形控件的VC源代碼\圓盤溫度儀表控件\Debug\StdAfx.obj
............此處省略112個文件信息
評論
共有 條評論