⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tdc.cpp

📁 你玩扫雷吗?你的显示器用的难道是640x480?
💻 CPP
字号:
// TDC.cpp: implementation of the TDC class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "TDC.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

TDC::TDC(HWND h)
{
	m_hWnd=h;
	m_hDC=GetDC(h);
	m_bFromDC=false;
}
TDC::TDC(HDC hdc)
{
	m_hWnd=0;
	m_bFromDC=true;
	m_hDC=hdc;
}
void TDC::Setup()
{
	m_Font=CreateFont(-16,0,0,0,  700,0,0,0,  134,3,2,1,2,"宋体");
	m_Pen=CreatePen(0,PS_SOLID,0);
}
TDC::~TDC()
{
	if(!m_bFromDC)ReleaseDC(m_hWnd,m_hDC);
	::DeleteObject(m_Font);
	::DeleteObject(m_Pen);
}
void TDC::MoveTo(int x,int y)
{
	::MoveToEx(m_hDC,x,y, 0);
	/*
	POINT point,p2;
	::GetCurrentPositionEx(m_hDC,&point);
	::MoveToEx(m_hDC,x-point.x,y-point.y,&p2);//*/
}
void TDC::LineTo(int x,int y)
{
	::LineTo(m_hDC,x,y);
}
void TDC::TextOut(int x,int y,const char*text,int nChar)
{
	::TextOut(m_hDC,x,y,text,nChar>=0?nChar:strlen(text));
}
int TDC::SetROP2(int nDrawMode)
{
	return ::SetROP2(m_hDC,nDrawMode);
}
void TDC::FillRect(RECT&r, COLORREF color)
{
	HBRUSH b;
	b=CreateSolidBrush(color);
	::FillRect(m_hDC,&r,b);
	DeleteObject(b);
}
void TDC::FillRect(int l,int t,int r,int b, COLORREF color)
{
	RECT rect={l,t,r,b};
	FillRect(rect,color);
}
void TDC::SetTextColor(COLORREF color)
{
	::SetTextColor(m_hDC,color);
}
void TDC::SetTextBkColor(COLORREF color)
{
	::SetBkColor(m_hDC,color);
}
void TDC::SetFont(int size,char *fontname)
{
	HFONT h=CreateFont(-size,0,0,0,  700,0,0,0,  134,3,2,1,2,fontname);
	if(!h)return ;
	::DeleteObject(m_Font);
	m_Font=h;
	::SelectObject(m_hDC,m_Font);
}
HGDIOBJ TDC::SelectObject(HGDIOBJ obj)
{
	return ::SelectObject(m_hDC,obj);
}
void TDC::SetPen(int color,int w,unsigned int style)
{
	::DeleteObject(m_Pen);
	m_Pen=CreatePen(style,w,color);
	::SelectObject(m_hDC,m_Pen);
}
SIZE TDC::GetTextExtent(LPCTSTR str, int nCount)
{
	SIZE s;
	if(nCount<0)nCount=strlen(str);
	::GetTextExtentPoint(m_hDC,str,nCount,&s);
	return s;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -