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

📄 cbutton.cpp

📁 成熟的RPG引擎,Flysky发布. 斜视角引擎.
💻 CPP
字号:
#include "../GameH.h"

CButton::CButton()
{
ID=0;
Text=NULL;
IsCheck=FALSE;
CR[0]=RGB(255,0,128);CR[1]=RGB(255,255,0);CR[2]=RGB(0,255,0); //颜色初始化
ClickSound=NULL;
x=0;y=0;
PicS=NULL;
}
CButton::~CButton()
{
if(PicS!=NULL)
{
PicS->Release();
PicS=NULL;
}
//其他的不用管了 
}
bool CButton::InitButton(int XID,char *XText,int Xx,int Xy,char *CS)
{
ID=XID;Text=XText;x=Xx;y=Xy;ClickSound=CS;
CR[0]=RGB(255,0,128);CR[1]=RGB(255,255,0);CR[2]=RGB(0,255,0); //颜色初始化
return true;
}
void CButton::Show(LPDIRECTDRAWSURFACE7 Surf)
{
	if (IsCheck==FALSE) {ButtonFont.SetColor(CR[0]);ButtonFont.PrintText(Surf,x,y,Text);} //鼠标没在上面或没激活
	if (IsCheck==TRUE) {ButtonFont.SetColor(CR[1]);ButtonFont.PrintText(Surf,x,y,Text);}  //鼠标到上面或用键盘移动
	if (IsCheck==2) {ButtonFont.SetColor(CR[2]);ButtonFont.PrintText(Surf,x,y,Text);} //点击鼠标或激活并回车
}

BOOL CButton::CheckLoop(bool MMoveT,bool KDown,bool MDown,LPDIRECTDRAWSURFACE7 Surf)
{
POINT cs;
GetCursorPos(&cs);
if (MMoveT==true&&KDown==true) {RunMessage(MS_PLAYSOUND,0,ClickSound,0,0,0,0,NULL,0);IsCheck=2;}
else if (MMoveT==true) IsCheck=TRUE;
if (cs.x>x&&cs.x<int(x+((strlen(Text)*ButtonFont.font_Size)>>1))&&cs.y>y&&cs.y<int(y+ButtonFont.font_Size))
{
	if (MDown==true) {RunMessage(MS_PLAYSOUND,0,ClickSound,0,0,0,0,NULL,0);IsCheck=2;}
	else IsCheck=TRUE;
}
else IsCheck=FALSE;
Show(Surf); //显示
return IsCheck;
}

bool CButton::SetButtonColor(COLORREF color1,COLORREF color2,COLORREF color3)
{
	CR[0]=color1;CR[1]=color2;CR[2]=color3;
	return true;
}
bool CButton::SetButtonFont(int size,char *FontName)
{
	ButtonFont.SetFont(size,FontName) ;
    return true;
}

⌨️ 快捷键说明

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