//头文件
#ifndef GOLD_CONTROL_HEAD_FILE
#define GOLD_CONTROL_HEAD_FILE
#pragma once
#include "Stdafx.h"
#define IDM_MAX_SCORE WM_USER+120 //最大下注
#define IDM_MIN_SCORE WM_USER+121 //最小下注
#define IDM_OK_SCORE WM_USER+122 //确定消息
#define IDM_CANCEL_SCORE WM_USER+123 //取消消息
#define IDM_USER_ADD WM_USER+124 //用户加注
//
//金币控制
class CGoldControl : public CWnd
{
//变量定义
protected:
LONGLONG m_lMaxGold; //最大金币
LONGLONG m_lMinGold; //最小金币
LONGLONG m_lGoldCell[7]; //单元金币
CPoint m_BasicPoint; //基础位置
LONGLONG m_lFollowGold; //跟注金币
LONGLONG m_SecondGold; //第二金币
WORD m_bScoreTmp; //分数
bool m_bLeftButtonOn; //鼠标左键
CPoint m_bInitialPn; //初始位置
CPoint m_bLastPn; //最后位置
LONGLONG m_bNowGold; //当前金币
bool m_bKeyDown; //按键按下
//位置变量
protected:
int m_nWidth; //控件宽度
int m_nCellCount; //单元数目
//按纽控件
public:
CSkinButton m_btMaxScore; //最大按钮
CSkinButton m_btMinScore; //最小按钮
CSkinButton m_btThreeTmp; //三倍大盲
CSkinButton m_btToTal; //底池按纽
CSkinButton m_btAdd; //加按钮
CSkinButton m_btMinus; //减按钮
//资源变量
protected:
CBitImage m_ImageLeft; //背景资源
CBitImage m_ImageMid; //背景资源
CBitImage m_ImageRight; //背景资源
CBitImage m_ImageNumber; //数字资源
CPngImageEx m_PngHaveScore; //有分数
CPngImageEx m_PngNoScore; //无分数
CPngImageEx m_PngScoreBar; //分数框
CEdit m_Edit; //编辑框
HBRUSH m_brMine; //颜色刷
bool m_IsFirstIn; //首次输入
bool m_MoveState; //移动状态
// bool m_IsKenIn; //键盘输入
//函数定义
public:
//构造函数
CGoldControl();
//析构函数
virtual ~CGoldControl();
//功能函数
public:
//获取金币
LONGLONG GetGold();
//设置金币
void SetGold(LONGLONG lGold);
//设置限注
void SetMaxGold(LONGLONG lMaxGold);
//设置最小
void SetMinGold(LONGLONG lMinGold);
//设置最小加注
void SetSmallGold(LONGLONG lSmallGold);
//设置位置
void SetBasicPoint(int nXPos, int nYPos);
//设置移动状态
void SetLeftButtonUp(bool IsUp);
//设置刷新
void SetText();
//发送加注
void SendAdd();
//获取金币字符串
WORD GetGlodString(LONGLONG lGold, TCHAR szString[]);
//获取最大金币
LONGLONG GetMaxGold();
//设置第二大金币
void SetSecondGold(LONGLONG bSecondGold);
//内部函数
private:
//调整控件
void RectifyControl();
BOOL PreTranslateMessage(MSG* pMsg);
//消息映射
protected:
//重画函数
afx_msg void OnPaint();
//左键按下消息
afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
//键盘事件
afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt,UINT nFlags);
右键按下消息
//afx_msg void OnRButtonUp(UINT nFlags, CPoint point);
//设置光标
afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
//最小下注
afx_msg void OnMinScore();
//最大下注
afx_msg void OnMaxScore();
//三倍大盲
afx_msg void OnThreeTmp();
//底池按钮
afx_msg void OnToTal();
//+消息
afx_msg void OnAddScore();
//-消息
afx_msg void OnMinusScore();
//添加颜色
afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) ;
//鼠标移动
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
//左键落
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
//鼠标双击
afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
DECLARE_MESSAGE_MAP()
public:
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
};
//
#endif
//实现
#include "Stdafx.h"
#include "Math.h"#include "Resource.h"
#include "GoldControl.h"
#include ".\goldcontrol.h"
//
//宏定义
#define CELL_WIDTH 23 //单元宽度
#define LESS_WIDTH 229 //最小宽度
#define CONTROL_HEIGHT 58 //控件高度
#define BAR_WIDTH 9 //滑块的宽度
#define BAR_HEIGHT 18 //滑块的高度
#define IMAGE_HEIGHT 58 //图片高度
#define IMAGE_WIDTH 46 //图片宽度
#define SCORE_WIDTH 100 //分数框位置
//按钮标识
#define IDC_MAXSCORE 101 //最大下注
#define IDC_MINSCORE 102 //最小下注
#define IDC_OK 103 //确定按纽
#define IDC_CANCEL 104 //取消按纽
#define IDC_ADD 105 //加按钮
#define IDC_MINUS 106 //减按钮
#define IDC_EDIT 107 //编辑框
#define IDC_TEST 108 //编辑选项
#define MIN_ADD m_lFollowGold //最小加注
//
BEGIN_MESSAGE_MAP(CGoldControl, CWnd)
ON_WM_PAINT()
ON_WM_LBUTTONUP()
//ON_WM_RBUTTONUP()
ON_WM_SETCURSOR()
ON_WM_CREATE()
ON_WM_KEYDOWN()
ON_WM_LBUTTONDBLCLK()
ON_BN_CLICKED(IDC_MINSCORE,OnMinScore)
ON_BN_CLICKED(IDC_MAXSCORE,OnMaxScore)
ON_BN_CLICKED(IDC_OK,OnThreeTmp)
ON_BN_CLICKED(IDC_CANCEL,OnToTal)
ON_BN_CLICKED(IDC_ADD,OnAddScore)
ON_BN_CLICKED(IDC_MINUS,OnMinusScore)
ON_WM_CTLCOLOR()
ON_WM_MOUSEMOVE()
ON_WM_LBUTTONDOWN()
END_MESSAGE_MAP()
//
//构造函数
CGoldControl::CGoldControl()
{
//界面变量
m_nWidth=0;
m_nCellCount=0;
//设置变量
m_lMaxGold = 0L;
m_lMinGold = 0L;
ZeroMemory(m_lGoldCell,sizeof(m_lGoldCell));
//加载资源
HINSTANCE hInstance=AfxGetInstanceHandle();
m_ImageLeft.LoadFromResource(hInstance,IDB_LEFT);
m_PngHaveScore.LoadImage(this,hInstance,TEXT("SCORE_YES"));
m_PngNoScore.LoadImage(this,hInstance,TEXT("SCORE_NO"));
m_PngScoreBar.LoadImage(this,hInstance,TEXT("SCORE_BAR"));
m_IsFirstIn=false;
m_MoveState=false;
m_bScoreTmp=0;
m_bLeftButtonOn=false;
m_lFollowGold=0;
m_SecondGold=0;
}
//析构函数
CGoldControl::~CGoldControl()
{
}
//获取金币
LONGLONG CGoldControl::GetGold()
{
return m_bNowGold;
}
//设置金币
void CGoldControl::SetGold(LONGLONG lGold)
{
//设置变量
m_bNowGold=lGold;
SendAdd();
if(m_bNowGold==m_lMaxGold)
{
m_bScoreTmp=100;
}
else
{
m_bScoreTmp=m_lMinGold*100/m_lMaxGold;
}
TCHAR szBuffer[64]=TEXT("");
GetGlodString(m_bNowGold,szBuffer);
m_Edit.SetWindowText(szBuffer);
InvalidateRect(CRect(92,29,208,50));
// InvalidateRect(CRect(10,30,77,44));
return;
}
//设置用户最小下注
void CGoldControl::SetMinGold(LONGLONG lMinGold)
{
//校验改变
if (lMinGold>m_lMaxGold) return;
if((lMinGold == m_lMinGold)||(lMinGold <0L)) return;
ZeroMemory(m_lGoldCell,sizeof(m_lGoldCell));
设置变量
m_lMinGold = lMinGold;
//设置变量
int nIndex=0;
while (lMinGold>0L)
{
m_lGoldCell[nIndex++]=lMinGold%10L;
lMinGold/=10L;
}
//调整界面
InvalidateRect(CRect(92,29,208,50));
//InvalidateRect(CRect(10,30,77,44));
return;
}
//设置用户最高下注数
void CGoldControl::SetMaxGold(LONGLONG lMaxGold)
{
//效验改变
if (m_lMaxGold==lMaxGold) return;
//设置变量
m_lMaxGold=lMaxGold;
//计算单元
m_nCellCount=0;
while (lMaxGold>0L)
{
lMaxGold/=10L;
m_nCellCount++;
}
m_nCellCount=__min(CountArray(m_lGoldCell),__max(m_nCellCount,1));
//设置界面
m_nWidth=229;
MoveWindow(m_BasicPoint.x-m_nWidth,m_BasicPoint.y-CONTROL_HEIGHT,m_nWidth,CONTROL_HEIGHT);
return;
}
//设置位置
void CGoldControl::SetBasicPoint(int nXPos, int nYPos)
{
//设置变量
m_BasicPoint.x=nXPos;
m_BasicPoint.y=nYPos;
//调整界面
RectifyControl();
return;
}
void CGoldControl::SetText()
{
TCHAR szBuffer[64]=TEXT("");
GetGlodString(m_bNowGold,szBuffer);
m_Edit.SetWindowText(szBuffer);
InvalidateRect(CRect(92,29,208,50));
}
//设置小盲
void CGoldControl::SetSmallGold(LONGLONG lSmallGold)
{
m_lFollowGold=lSmallGold;
}
//调整控件
void CGoldControl::RectifyControl()
{
MoveWindow(m_BasicPoint.x-m_nWidth,m_BasicPoint.y-CONTROL_HEIGHT,m_nWidth,CONTROL_HEIGHT);
CRect rcButton;
HDWP hDwp=BeginDeferWindowPos(32);
const UINT uFlags=SWP_NOACTIVATE|SWP_NOZORDER|SWP_NOCOPYBITS|SWP_NOSIZE;
//最大按钮
m_btMaxScore.GetWindowRect(&rcButton);
DeferWindowPos(hDwp,m_btMaxScore,NULL,12+rcButton.Width()*3,2,0,0,uFlags);
//最小按钮
DeferWindowPos(hDwp,m_btMinScore,NULL,6,2,0,0,uFlags);
//三倍大盲
DeferWindowPos(hDwp,m_btThreeTmp,NULL,10+rcButton.Width()*2,2,0,0,uFlags);
//底池按钮
DeferWindowPos(hDwp,m_btToTal,NULL,8+rcButton.Width(),2,0,0,uFlags);
//加按钮
DeferWindowPos(hDwp,m_btAdd,NULL,210,22,0,0,uFlags);
//减按钮
DeferWindowPos(hDwp,m_btMinus,NULL,79,21,0,0,uFlags);
//结束移动
EndDeferWindowPos(hDwp);
return;
}
WORD CGoldControl::GetGlodString(LONGLONG lGold, TCHAR szString[])
{
LONGLONG lTemp=(LONGLONG)lGold;
if(lGold<0L) return 0;
//处理小数点
DWORD dwCharBit=0L;
//转换字符
lTemp = (LONGLONG)lGold;
WORD i=0;
while(1)
{
lTemp/=10;
i++;
if(lTemp<10)
{
break;
}
}
DWORD dwNumBit=0L;
lTemp=lGold;
if(i>=7 && i<=9)
{
lTemp/=1000;
dwNumBit++;
szString[dwCharBit++]=(TCHAR)('K');
}
if(i>9)
{
lTemp/=1000000;
dwNumBit++;
szString[dwCharBit++]=(TCHAR)('M');
}
do
{
dwNumBit++;
szString[dwCharBit++]=(TCHAR)(lTemp%10+TEXT('0'));
lTemp/=10;
} while (lTemp>0L);
//调整字符
if (szString[dwCharBit-1]==TEXT(',')) szString[dwCharBit-1]=0;
szString[dwCharBit]=0;
//尾头交换
_tcsrev(szString);
return (WORD)dwNumBit;
}
//重画函数
void CGoldControl::OnPaint()
{
CPaintDC dc(this);
//获取位置
CRect ClientRect;
GetClientRect(&ClientRect);
if(m_bKeyDown==true)
{
m_bKeyDown=false;
CString szBuffer1;
m_Edit.GetWindowText(szBuffer1);
LONGLONG bScoreNum=_wtol(szBuffer1);
if(bScoreNum>99999999)
{
TCHAR szBuffer[64]=TEXT("");
GetGlodString(bScoreNum,szBuffer);
m_Edit.SetWindowText(szBuffer1);
}
if(bScoreNum>=m_lMinGold && bScoreNum<=m_lMaxGold)
{
m_bNowGold=bScoreNum;
m_bScoreTmp=bScoreNum*100/m_lMaxGold;
SendAdd();
}
else if(bScoreNum>m_lMaxGold)
{
SetGold(m_lMaxGold);
}
else
{
m_bNowGold=bScoreNum;
m_bScoreTmp=m_lMinGold*100/m_lMaxGold;
SendAdd();
}
}
//建立缓冲图
CDC BackFaceDC;
CBitmap BufferBmp;
BufferBmp.CreateCompatibleBitmap(&dc,ClientRect.Width(),ClientRect.Height());
BackFaceDC.CreateCompatibleDC(&dc);
BackFaceDC.SelectObject(&BufferBmp);
//绘画背景
m_ImageLeft.BitBlt(BackFaceDC,0,0);
m_PngNoScore.DrawImage(&BackFaceDC,SCORE_WIDTH,37,m_PngNoScore.GetWidth(),m_PngNoScore.GetHeight(),0,0);
m_PngHaveScore.DrawImage(&BackFaceDC,SCORE_WIDTH,37,(m_PngHaveScore.GetWidth()/100)*m_bScoreTmp,m_PngHaveScore.GetHeight(),0,0);
m_PngScoreBar.DrawImage(&BackFaceDC,SCORE_WIDTH-4+m_bScoreTmp,28,m_PngScoreBar.GetWidth(),m_PngScoreBar.GetHeight(),0,0);
//绘画界面
dc.BitBlt(0,0,ClientRect.Width(),ClientRect.Height(),&BackFaceDC,0,0,SRCCOPY);
return;
}
//左键弹起消息
void CGoldControl::OnLButtonUp(UINT nFlags, CPoint point)
{
__super::OnLButtonUp(nFlags,point);
m_bLeftButtonOn=false;
InvalidateRect(CRect(92,29,208,50));
m_MoveState=false;
return;
}
//设置光标
BOOL CGoldControl::OnSetCursor(CWnd * pWnd, UINT nHitTest, UINT message)
{
//获取鼠标
POINT point;
GetCursorPos(&point);
ScreenToClient(&point);
if ((point.y>17)&&(point.y<57)&&(point.x>SCORE_WIDTH-20)&&(point.x<(SCORE_WIDTH+120)))
{
SetCursor(LoadCursor(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDC_CARD_CUR)));
return TRUE;
}
return __super::OnSetCursor(pWnd, nHitTest, message);
}
//
int CGoldControl::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (__super::OnCreate(lpCreateStruct) == -1)
return -1;
// TODO: Add your specialized creation code here
//创建控件
CRect rcCreate(0,0,0,0);
m_btMaxScore.Create(TEXT(""),WS_CHILD|WS_VISIBLE,rcCreate,this,IDC_MAXSCORE);
m_btMinScore.Create(TEXT(""),WS_CHILD|WS_VISIBLE,rcCreate,this,IDC_MINSCORE);
m_btThreeTmp.Create(TEXT(""),WS_CHILD|WS_VISIBLE,rcCreate,this,IDC_OK);
m_btToTal.Create(TEXT(""),WS_CHILD|WS_VISIBLE,rcCreate,this,IDC_CANCEL);
m_btAdd.Create(TEXT(""),WS_CHILD|WS_VISIBLE,rcCreate,this,IDC_ADD);
m_btMinus.Create(TEXT(""),WS_CHILD|WS_VISIBLE,rcCreate,this,IDC_MINUS);
m_Edit.Create(ES_LEFT|ES_NUMBER|WS_VISIBLE|WM_CTLCOLOR,CRect(9,30,77,47),this,IDC_EDIT);
//加载位图
HINSTANCE hInstance=AfxGetInstanceHandle();
m_btMaxScore.SetButtonImage(IDB_BT_MAX,hInstance,false,false);
m_btMinScore.SetButtonImage(IDB_BT_MIN,hInstance,false,false);
m_btThreeTmp.SetButtonImage(IDB_BT_OK,hInstance,false,false);
m_btToTal.SetButtonImage(IDB_BT_CANCEL,hInstance,false,false);
m_btAdd.SetButtonImage(IDB_ADD,hInstance,false,false);
m_btMinus.SetButtonImage(IDB_MINUS,hInstance,false,false);
return 0;
}
//最小下注
void CGoldControl::OnMinScore()
{
SetGold(m_lMinGold);
((CGameClientView *)(this->GetParent()))->SendEngineMessage(IDM_MIN_SCORE,WPARAM(m_lMinGold),LPARAM(m_lMinGold));
SendAdd();
return ;
}
//最大下注
void CGoldControl::OnMaxScore()
{
SetGold(m_lMaxGold);
((CGameClientView *)(this->GetParent()))->SendEngineMessage(IDM_MAX_SCORE,WPARAM(m_lMaxGold),LPARAM(m_lMaxGold));
SendAdd();
return ;
}
//三倍大盲
void CGoldControl::OnThreeTmp()
{
LONGLONG lGold = GetGold();
((CGameClientView *)(this->GetParent()))->SendEngineMessage(IDM_OK_SCORE,WPARAM(lGold),LPARAM(lGold));
SendAdd();
return;
}
//底池按钮
void CGoldControl::OnToTal()
{
((CGameClientView *)(this->GetParent()))->SendEngineMessage(IDM_CANCEL_SCORE,0,0);
SendAdd();
return;
}
//+消息
void CGoldControl::OnAddScore()
{
m_bNowGold += MIN_ADD;
if(m_bNowGold>m_lMaxGold)
{
m_bNowGold=m_lMaxGold;
}
m_bScoreTmp = m_bNowGold*100/m_lMaxGold;
TCHAR szBuffer[64]=TEXT("");
GetGlodString(m_bNowGold,szBuffer);
m_Edit.SetWindowText(szBuffer);
InvalidateRect(CRect(92,29,208,50));
//InvalidateRect(CRect(10,30,77,44));
SendAdd();
}
//发送加注
void CGoldControl::SendAdd()
{
if(m_bNowGold<m_lMinGold)
{
m_bNowGold=m_lMinGold;
}
if(m_bNowGold>m_lMaxGold)
{
m_bNowGold=m_lMaxGold;
}
((CGameClientView *)(this->GetParent()))->SendEngineMessage(IDM_USER_ADD,WPARAM(m_bNowGold),0);
return ;
}
//—消息
void CGoldControl::OnMinusScore()
{
m_bNowGold -= MIN_ADD;
if(m_bNowGold<m_lMinGold)
{
m_bNowGold=m_lMinGold;
}
m_bScoreTmp = m_bNowGold*100/m_lMaxGold;
TCHAR szBuffer[64]=TEXT("");
GetGlodString(m_bNowGold,szBuffer);
m_Edit.SetWindowText(szBuffer);
InvalidateRect(CRect(92,29,208,50));
//InvalidateRect(CRect(10,30,77,44));
SendAdd();
}
//鼠标移动
void CGoldControl::OnMouseMove(UINT nFlags, CPoint point)
{
if(point.x<100 || point.x>SCORE_WIDTH+110)
return;
if(!m_bLeftButtonOn)
{
return;
}
if(m_bLeftButtonOn==true && m_MoveState==true)
{
m_bScoreTmp=point.x-SCORE_WIDTH;
if(m_bScoreTmp<=0)
{
m_bScoreTmp=0;
m_bNowGold=m_lMinGold;
}
if(m_bScoreTmp>=1)
{
m_bNowGold = (((m_lMaxGold/100)*m_bScoreTmp)/MIN_ADD);
m_bNowGold *= MIN_ADD;
if(m_bScoreTmp >= 100)
{
m_bScoreTmp=100;
m_bNowGold=m_lMaxGold;
}
}
if(m_bNowGold<m_lMinGold)
{
m_bNowGold=m_lMinGold;
}
if(m_bNowGold>m_lMaxGold)
{
m_bNowGold=m_lMaxGold;
}
TCHAR szBuffer[64]=TEXT("");
GetGlodString(m_bNowGold,szBuffer);
m_Edit.SetWindowText(szBuffer);
SendAdd();
InvalidateRect(CRect(92,29,208,50));
//InvalidateRect(CRect(10,30,77,44));
}
__super::OnMouseMove(nFlags,point);
}
//左键按下
void CGoldControl:: OnLButtonDown(UINT nFlags, CPoint point)
{
if(point.x<SCORE_WIDTH-8 || point.x>SCORE_WIDTH+108 || point.y<17 || point.y>50)
return;
m_bLeftButtonOn=true;
if((point.x>=SCORE_WIDTH-5+m_bScoreTmp) && (point.x<SCORE_WIDTH+5+m_bScoreTmp+BAR_WIDTH))
{
m_MoveState=true;
m_bInitialPn=point;
InvalidateRect(CRect(92,29,208,50));
__super::OnLButtonDown(nFlags, point);
return ;
}
if(point.x<SCORE_WIDTH-5)
{
OnMinusScore();
}
else if(point.x>SCORE_WIDTH+5+m_bScoreTmp+BAR_WIDTH)
{
OnAddScore();
}
InvalidateRect(CRect(92,29,208,50));
//InvalidateRect(CRect(10,30,77,44));
__super::OnLButtonDown(nFlags, point);
}
void CGoldControl::OnKeyDown(UINT nChar, UINT nRepCnt,UINT nFlags)
{
m_bKeyDown=true;
InvalidateRect(CRect(92,29,208,50));
//InvalidateRect(CRect(10,30,77,44));
}
BOOL CGoldControl::PreTranslateMessage(MSG* pMsg)
{
if(pMsg->message == WM_LBUTTONDOWN) //左键按下
{
return FALSE;
}
if(pMsg->message == WM_LBUTTONDBLCLK) //左键按下
{
return FALSE;
}
AFX_MODULE_STATE* pModuleState = _AFX_CMDTARGET_GETSTATE();
if (pModuleState->m_pfnFilterToolTipMessage != NULL)
(*pModuleState->m_pfnFilterToolTipMessage)(pMsg, this);
SendMessage(pMsg->message,pMsg->wParam,pMsg->lParam);
return FALSE;
}
HBRUSH CGoldControl:: OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
if ((pWnd-> GetDlgCtrlID() == IDC_EDIT) && (nCtlColor == CTLCOLOR_EDIT))
{
COLORREF clr = RGB(255,255,255);
pDC-> SetTextColor(clr); //设置文本
clr = RGB(27,81,128);
pDC-> SetBkColor(clr); //设置背景
m_brMine = ::CreateSolidBrush(clr);
return m_brMine; //作为约定,返回背景色对应的刷子句柄
}
else
{
HBRUSH hbr = CWnd::OnCtlColor(pDC, pWnd, nCtlColor);
return hbr;
}
}
//右键弹起
void CGoldControl::SetLeftButtonUp(bool IsUp)
{
m_MoveState=false;
m_bLeftButtonOn=false;
}
//获取最大金币
LONGLONG CGoldControl:: GetMaxGold()
{
return m_lMaxGold;
}
//设置第二金币
void CGoldControl::SetSecondGold(LONGLONG bSecondGold)
{
m_SecondGold=bSecondGold;
}
//鼠标双击
void CGoldControl::OnLButtonDblClk(UINT nFlags, CPoint point)
{
if(point.x<SCORE_WIDTH-8 || point.x>SCORE_WIDTH+108 || point.y<17 || point.y>50)
return;
if(point.x<SCORE_WIDTH-5)
{
OnMinusScore();
}
else if(point.x>SCORE_WIDTH+5+m_bScoreTmp+BAR_WIDTH)
{
OnAddScore();
}
InvalidateRect(CRect(92,29,208,50));
}