?? fg_win32drawinterface.h
字號:
/*--------------------------------------------------------------------------
FG_Win32DrawInterface.h - Win32的繪圖接口類的頭文件
本程序是FishGUI軟件的一部分
版權所有 (C) 2003,2004 王詠武
http://www.contextfree.net/wangyw/
----------------------------------------------------------------------------
作者對 FishGUI 軟件及其所有源代碼授權如下:
允許任何個人、組織、機構、企業無償獲得、修改、使用、重新發布 FishGUI 軟
件及其源代碼,或按照有償或者無償的方式發行基于 FishGUI 源代碼的全部或部
分內容開發的軟件產品,——但行使以上權利時,須遵守以下約定:
1、重新發布 FishGUI 軟件及其源代碼時,不得隱去軟件及其源代碼中原有的版
權信息和開發者標識。
2、發行基于 FishGUI 源代碼的全部或部分內容開發的軟件產品時,必須在產品
的顯著位置標明以下字樣:
【本產品的一部分功能是基于王詠武在 FishGUI 軟件中的工作完成的】
3、在正式出版物中引用 FishGUI 的文檔、源代碼或注釋內容的,應注明軟件的
原作者為王詠武。
--------------------------------------------------------------------------*/
/*! \addtogroup OSAdaptor
* @{
*/
/*! \file
* \brief Win32的繪圖接口類的頭文件
*/
#ifndef FG_WIN32DRAWINTERFACE_H_HEADER_INCLUDED_C0B152A0
#define FG_WIN32DRAWINTERFACE_H_HEADER_INCLUDED_C0B152A0
#include "FG_OSDrawInterface.h"
//##ModelId=3F49D01202C6
/*! \brief Win32的繪圖接口類
*
* 該類封裝Win32的繪圖過程
*/
class FG_Win32DrawInterface : public FG_OSDrawInterface
{
public:
//##ModelId=3F4EDED00308
/*! \brief Win32的繪圖接口類的構造函數 */
FG_Win32DrawInterface() : m_hMemDC(0) {}
//##ModelId=3F71AB2E0279
/*! \brief Win32的繪圖接口類的析構函數 */
~FG_Win32DrawInterface();
//##ModelId=3F6EAFFF0390
/*! \brief 設置Win32的繪圖設備句柄
*
* \param hdc 要設置的繪圖設備句柄
*/
void SetHDC(const HDC hdc) { m_hDC = hdc; }
//##ModelId=3F4EDED00326
void BeginDraw(const FG_Rect & rect);
//##ModelId=3F4EDED003A8
void EndDraw();
//##ModelId=3F4EDED003E4
void FillRect(const FG_Rect & rect, const COLORVAL ForeColor, const COLORVAL background);
//##ModelId=3F4EDED10133
void Line(const short x1, const short y1, const short x2, const short y2, const COLORVAL color);
//##ModelId=3F4EDED1031E
void DrawText(const char * Text, const short x, const short y, const COLORVAL color);
//##ModelId=3F4EDED200DA
WORD GetTextWidth(const char * Text);
//##ModelId=3F4EDED20184
WORD GetTextHeight(const char * Text);
//##ModelId=3F4EDED20239
void DrawBitmap(const char * pBmpName, const short x1, const short y1);
//##ModelId=3F6193B201F2
void DrawPolyLine(const short n, const FG_Point * vert, const COLORVAL color);
//##ModelId=3F6EAC820075
void DrawDotRect(const FG_Rect & rect, const COLORVAL color);
protected:
//##ModelId=3F6EAFFF012D
HDC m_hDC; /*!< \brief Win32繪圖設備句柄 */
//##ModelId=3F6EAFFF017D
HDC m_hMemDC; /*!< \brief 兼容的內存繪圖設備句柄,用作繪圖緩沖區 */
//##ModelId=3F6EAFFF01CD
HBITMAP m_hBitmap; /*!< \brief 內存緩沖區所用的位圖句柄 */
//##ModelId=3F6EAFFF021E
HFONT m_hFont; /*!< \brief 字體句柄 */
};
#endif /* FG_WIN32DRAWINTERFACE_H_HEADER_INCLUDED_C0B152A0 */
/*! @} */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -