亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? kcbusyprogressctrl.h

?? WinCE開發技巧與實例的配套源碼
?? H
字號:
/****************************************************************************
 *	class		:	CKCBusyProgressCtrl
 *	author		:	Peter Mares / kinkycode.com (gui@ch.co.za)
 *	base class	:	CStatic (MFC)
 *	notes		:	Control to be used for progress indication when there are
 *					no lower and upper bounds available for a progress bar.
 *					Can also be used as a normal progress bar
 *
 *	Disclaimer	:	Its free, it feels good and its from South Africa :)
 ****************************************************************************
 *	Version History:
 *
 *	v0.1 (2003-04-21)
 *
 *	- First public release
 *
 *	v0.2 (2003-04-22)
 *
 *	- Added support for WM_SYSCOLORCHANGE
 *	- Added flag for whether background colour was a system colour (true by default)
 *	- Modified ON_MESSAGE handlers to return LRESULT instead of void for
 *	  VC++.NET compatibility
 *  - Added "Busy Type" flag to support different motion while in busy mode.
 *	  Current modes supported are :		BPC_BUSY_PINGPONG
 *										BPC_BUSY_LTR		(left to right)
 *										BPC_BUSY_RTL		(right to left)
 *	- Added "Busy Fill" flag to support different filling methods while in
 *	  busy mode. 
 *	  Current modes supported are :		BPC_BUSYFILL_BLOCK	(block filling)
 *										BPC_BUSYFILL_SMOOTH	(smooth filling)
 *  - Fixed bug in percentage fill calculation
 *
 *	v0.21 (2003-04-30)
 *
 *	- Fixed a threading bug (identified by Mark Richards - thanks)
 *
 *	v0.3 (2003-05-02)
 *
 *	- Added the outstanding BPM_XXXXX Messages and handlers to the control
 *
 ****************************************************************************/

#if !defined(AFX_BUSYPROGRESSCTRL_H__BEE47141_AAF5_44A5_8408_2C4452BD764A__INCLUDED_)
#define AFX_BUSYPROGRESSCTRL_H__BEE47141_AAF5_44A5_8408_2C4452BD764A__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// BusyProgressCtrl.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// CKCBusyProgressCtrl window

//
// defines for the control's mode
#define	BPC_MODE_BUSY		0x00000001
#define	BPC_MODE_PROGRESS	0x00000002

//
// defines for the type of BUSY mode
#define BPC_BUSY_PINGPONG	0x00000001
#define	BPC_BUSY_LTR		0x00000002
#define	BPC_BUSY_RTL		0x00000004

//
// defines for the fill type of BUSY mode
#define	BPC_BUSYFILL_BLOCK	0x00000001
#define	BPC_BUSYFILL_SMOOTH	0x00000002

//
// custom message defines
#define BPM_SETNUMSTEPS		(WM_USER+1)
#define	BPM_SETCURPOS		(WM_USER+2)
#define	BPM_SETIBPAD		(WM_USER+3)
#define	BPM_SETSPEED		(WM_USER+4)
#define	BPM_SETRANGE		(WM_USER+5)
#define	BPM_SETMODE			(WM_USER+6)
#define BPM_STARTBUSY		(WM_USER+7)
#define BPM_ENDBUSY			(WM_USER+8)
#define	BPM_STEPIT			(WM_USER+9)
// new in version 0.3
#define	BPM_SETBUSYTYPE		(WM_USER+10)
#define	BPM_SETBUSYFILL		(WM_USER+11)
#define	BPM_SETGRANULARITY	(WM_USER+12)
#define	BPM_SETCOLBKG		(WM_USER+13)
#define	BPM_SETCOLBFACE		(WM_USER+14)
#define	BPM_SETCOLBEDGE		(WM_USER+15)
#define	BPM_SETCOLBFACEHI	(WM_USER+16)
#define	BPM_SETCOLBEDGEHI	(WM_USER+17)
#define	BPM_RECALC			(WM_USER+18)
#define	BPM_RESET			(WM_USER+19)
#define	BPM_USESYSCOL		(WM_USER+20)

class CKCBusyProgressCtrl : public CStatic
{
// Construction
public:
	CKCBusyProgressCtrl(int nNumSteps = 10, int nCurPos = 0);
	virtual ~CKCBusyProgressCtrl();

	//
	// Methods
	
	// since version 0.1
	void				Recalc();
	void				Reset();
	void				Start();
	void				End();
	void				StepIt();

	void				SetNumSteps(int nNumSteps)					{ m_nNumSteps = nNumSteps; Recalc(); }
	int					GetNumSteps()								{ return m_nNumSteps; }
	void				SetCurPos(int nCurPos)						{ m_nCurPos = nCurPos; Invalidate(); }
	int					GetCurPos()									{ return m_nCurPos; }
	void				SetInterBlockPadding(int nPadding)			{ m_nIBPadding = nPadding; Recalc(); }
	int					GetInterBlockPadding()						{ return m_nIBPadding; }
	void				SetSpeed(int nSpeed)						{ m_nSpeed = nSpeed; }
	int					GetSpeed()									{ return m_nSpeed; }
	bool				IsRunning()									{ return (m_pThrd != NULL); }
	void				SetMode(int nMode = BPC_MODE_BUSY);
	int					GetMode()									{ return m_nMode; }
	void				SetRange(int nLower, int nUpper)			{ m_nLower = nLower; m_nUpper = nUpper; }
	void				GetRange(int& nLower, int& nUpper)			{ nLower = m_nLower; nUpper = m_nUpper; }
	// new in version 0.2
	void				UseSysColBkg(bool bUse = true);
	void				SetBusyType(int nType = BPC_BUSY_PINGPONG);
	int					GetBusyType()								{ return m_nBusyType; }
	void				SetBusyFill(int nFill = BPC_BUSYFILL_BLOCK);
	int					GetBusyFill()								{ return m_nBusyFill; }
	void				SetGranularity(int nGranularity = 5)		{ m_nGranularity = nGranularity; SetBusyFill(m_nBusyFill); }
	int					GetGranularity()							{ return m_nGranularity; }
	
	// since version 0.1
	COLORREF			GetColBkg()									{ return m_colBkg; }
	void				SetColBkg(COLORREF col)						{ m_colBkg = col; }
	COLORREF			GetColBlockFace()							{ return m_colBlockFace; }
	void				SetColBlockFace(COLORREF col)				{ m_colBlockFace = col; }
	COLORREF			GetColBlockEdge()							{ return m_colBlockEdge; }
	void				SetColBlockEdge(COLORREF col)				{ m_colBlockEdge = col; }
	COLORREF			GetColBlockFaceHi()							{ return m_colBlockFaceHi; }
	void				SetColBlockFaceHi(COLORREF col)				{ m_colBlockFaceHi = col; }
	COLORREF			GetColBlockEdgeHi()							{ return m_colBlockEdgeHi; }
	void				SetColBlockEdgeHi(COLORREF col)				{ m_colBlockEdgeHi = col; }

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CKCBusyProgressCtrl)
	public:
	virtual BOOL Create(DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext = NULL);
	protected:
	virtual void PreSubclassWindow();
	//}}AFX_VIRTUAL

protected:

	//
	// Methods
	virtual void		DrawBackground(CDC& dc, CRect& rect);
	void				DrawBlocks(CDC& dc, CRect& rect);
	virtual void		DrawBlock(CDC& dc, CRect& rect);
	virtual void		DrawHiliteBlock(CDC& dc, CRect& rect);
	virtual void		DrawPartialBlock(CDC& dc, CRect& rect, int nPartial);

	// thread
	static UINT			thrdBusy(LPVOID pParam);

	//
	// Attributes
	int					m_nNumSteps;
	int					m_nStep;
	int					m_nCurPos;
	CRect				m_rect;
	int					m_nIBPadding;
	double				m_dBlockHeight;
	double				m_dBlockWidth;
	CWinThread*			m_pThrd;
	bool				m_bBusyThrd;
	int					m_nSpeed;
	int					m_nMode;
	int					m_nLower;
	int					m_nUpper;
	bool				m_bUseSysColBkg;
	int					m_nBusyType;
	int					m_nBusyFill;
	int					m_nGranularity;
	int					m_nNumStepsSmooth;

	// colours
	COLORREF			m_colBkg;
	COLORREF			m_colBlockFace;
	COLORREF			m_colBlockEdge;
	COLORREF			m_colBlockFaceHi;
	COLORREF			m_colBlockEdgeHi;

	// drawing stuff
	CDC					m_memDC;
	CBitmap				m_memBmp;
	CBitmap*			m_pOldBmp;

	// Generated message map functions
	//{{AFX_MSG(CKCBusyProgressCtrl)
	afx_msg void OnPaint();
	afx_msg void OnSize(UINT nType, int cx, int cy);
	afx_msg void OnSysColorChange();
	//}}AFX_MSG
	afx_msg LRESULT OnSetNumSteps(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnSetCurPos(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnSetIBPad(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnSetSpeed(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnSetRange(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnSetMode(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnStartBusy(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnEndBusy(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnStepIt(WPARAM wParam, LPARAM lParam);
	// new in version 0.3
	afx_msg LRESULT OnSetBusyType(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnSetBusyFill(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnSetGranularity(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnSetColBkg(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnSetColBFace(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnSetColBEdge(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnSetColBFaceHi(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnSetColBEdgeHi(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnRecalc(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnReset(WPARAM wParam, LPARAM lParam);
	afx_msg LRESULT OnUseSysCol(WPARAM wParam, LPARAM lParam);

	DECLARE_MESSAGE_MAP()
};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_BUSYPROGRESSCTRL_H__BEE47141_AAF5_44A5_8408_2C4452BD764A__INCLUDED_)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美亚洲一区二区在线| 美女高潮久久久| 国产精品国产三级国产有无不卡| 日韩亚洲欧美一区| 日韩免费一区二区三区在线播放| 3d成人动漫网站| 欧美一区午夜视频在线观看| 91精品国产乱码| 欧美va亚洲va| 欧美激情在线观看视频免费| 国产精品三级av在线播放| 国产精品色在线| 亚洲综合免费观看高清在线观看| 一区二区成人在线视频| 日韩有码一区二区三区| 黄色精品一二区| av电影在线不卡| 欧美色图第一页| 精品久久国产97色综合| 亚洲一区二区三区四区不卡| 亚洲小说欧美激情另类| 美腿丝袜在线亚洲一区| 懂色av一区二区夜夜嗨| 色欧美片视频在线观看 | 日韩一区二区在线观看| 精品国产乱子伦一区| 国产精品久久福利| 丝袜诱惑亚洲看片| 国产精品一区二区果冻传媒| 色综合久久中文字幕综合网| 欧美日韩免费视频| 国产免费成人在线视频| 午夜激情久久久| 懂色av噜噜一区二区三区av| 欧美日韩一级二级| 久久九九99视频| 天涯成人国产亚洲精品一区av| 精品制服美女丁香| 色偷偷一区二区三区| 精品国产伦一区二区三区观看方式| 国产精品成人一区二区三区夜夜夜| 天天影视色香欲综合网老头| 国产成人综合在线播放| 欧美日韩国产区一| 亚洲欧美在线视频观看| 极品尤物av久久免费看| 欧美日韩不卡视频| 国产精品久久久久国产精品日日| 日韩综合在线视频| 在线精品国精品国产尤物884a| 久久九九99视频| 久久电影网站中文字幕| 欧洲激情一区二区| 国产精品久久久久毛片软件| 激情久久五月天| 欧美一区二区三区日韩视频| 亚洲欧美日韩国产中文在线| 国产精品1024久久| 欧美成人r级一区二区三区| 亚洲h在线观看| 色就色 综合激情| 亚洲欧洲日产国产综合网| 国产精品66部| 久久亚洲一区二区三区四区| 日韩成人精品在线观看| 欧美日韩国产成人在线免费| 亚洲嫩草精品久久| 丰满放荡岳乱妇91ww| 国产精品第一页第二页第三页| 日本vs亚洲vs韩国一区三区| 欧美三级电影网| 亚洲国产欧美在线| 欧美在线视频不卡| 亚洲一区二区在线播放相泽 | 1024国产精品| 国产91在线观看丝袜| 久久久久久一级片| 国产成人午夜电影网| 亚洲国产精品黑人久久久| 成人免费看视频| 自拍偷拍亚洲综合| 色婷婷国产精品综合在线观看| 又紧又大又爽精品一区二区| 日本韩国欧美在线| 日韩精品久久久久久| 日韩三级精品电影久久久| 久久国产欧美日韩精品| 国产欧美日韩视频在线观看| 成人污视频在线观看| 亚洲激情成人在线| 欧美理论在线播放| 国产一区二区三区久久久| 国产日韩精品一区二区三区 | 99re这里只有精品视频首页| 椎名由奈av一区二区三区| 欧美性大战久久久久久久| 午夜久久久久久久久| 91精品国产免费| 粉嫩av一区二区三区| 亚洲色图色小说| 日韩三级高清在线| 99视频热这里只有精品免费| 午夜伊人狠狠久久| 国产免费久久精品| 欧美日韩国产小视频| 国产精品18久久久久久久久| 亚洲女同一区二区| 欧美成人一区二区| 91社区在线播放| 裸体健美xxxx欧美裸体表演| 国产精品视频观看| 91精品国产综合久久精品app | 国产不卡视频一区| 亚洲狠狠爱一区二区三区| 欧美性猛交xxxxxxxx| 欧美日韩国产大片| 国产福利一区二区三区在线视频| 综合久久综合久久| 亚洲精品一区二区三区蜜桃下载| 成人免费看黄yyy456| 视频在线观看国产精品| 国产精品欧美久久久久无广告 | 久久综合色综合88| 欧美日韩中字一区| 懂色av一区二区夜夜嗨| 午夜不卡在线视频| 亚洲三级理论片| 国产色一区二区| 日韩精品中文字幕在线不卡尤物| 在线亚洲+欧美+日本专区| 国产jizzjizz一区二区| 久久精品噜噜噜成人88aⅴ| 一区二区三区蜜桃| 亚洲欧美另类小说| 国产精品视频线看| 久久精品综合网| www国产精品av| 日韩一区国产二区欧美三区| 在线日韩一区二区| 91美女福利视频| 成人a免费在线看| 成人视屏免费看| 国产成人综合在线播放| 国产在线精品一区二区三区不卡 | 精品久久久久香蕉网| 欧美老人xxxx18| 欧美色电影在线| 欧美日韩综合不卡| 欧美美女一区二区在线观看| 在线看不卡av| 欧美日韩精品三区| 在线播放日韩导航| 欧美一区二区三区四区久久| 制服丝袜国产精品| 欧美一区二区三区免费| 欧美成人国产一区二区| 欧美xxxx老人做受| 2021国产精品久久精品| 久久久亚洲精华液精华液精华液| xnxx国产精品| 国产精品毛片无遮挡高清| 欧美国产精品劲爆| 国产精品免费视频网站| 国产精品国产精品国产专区不片| 国产精品国产精品国产专区不蜜 | 色94色欧美sute亚洲线路一久| 成人免费视频视频在线观看免费| 精品亚洲欧美一区| 不卡av电影在线播放| 91国偷自产一区二区开放时间| 在线免费亚洲电影| 欧美一级免费观看| 国产亚洲精品福利| 自拍偷拍亚洲欧美日韩| 亚洲一区中文在线| 蜜桃视频在线观看一区| 国产麻豆视频一区二区| 99re热视频精品| 69精品人人人人| 久久婷婷国产综合国色天香| 国产精品污污网站在线观看| 亚洲一区二区在线观看视频| 久久se精品一区精品二区| 成人免费视频app| 91精品国产综合久久久久久久| 久久久久久久久一| 亚洲成人av资源| 国产v综合v亚洲欧| 在线观看视频91| 久久精品一区二区三区不卡牛牛| 亚洲精品欧美激情| 激情文学综合插| 欧美日韩国产综合一区二区三区| 久久久久久久电影| 视频在线观看一区| 色吧成人激情小说| 国产亚洲综合av| 天天综合色天天| 成人性生交大合| 日韩欧美国产午夜精品|