项目小结
来源:互联网 发布:淘宝店铺招牌设计制作 编辑:程序博客网 时间:2024/04/30 15:00
void CMyDlg::OnMouseMove(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
// Invalidate();
if(((point.x-500)*(point.x-500)+(point.y-200)*(point.y-200))<=10000)
{
if((point.y<=170)&&((point.x+point.y)<=700)&&((point.x-point.y)>=300))//up
{
m_up=1;m_Ok=0;m_C=0;m_down=0;
::SetCursor(::LoadCursor(NULL,IDC_HAND));
}
if((point.y>=230)&&((point.x+point.y)>=700)&&((point.x-point.y)<=300))//down
{
m_down=1;m_up=0;m_Ok=0;m_C=0;
::SetCursor(::LoadCursor(NULL,IDC_HAND));
}
if((point.x<=470)&&((point.x+point.y)<=700)&&((point.x-point.y)<=300))//C
{
m_C=1;m_up=0;m_Ok=0;m_down=0;
::SetCursor(::LoadCursor(NULL,IDC_HAND));
}
if((point.x>=530)&&((point.x+point.y)>=700)&&((point.x-point.y)>=300))//Ok
{
m_Ok=1;m_up=0;m_C=0;m_down=0;
::SetCursor(::LoadCursor(NULL,IDC_HAND));
}
}
CDialog::OnMouseMove(nFlags, point);
}
void CMyDlg::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
CDC *pDC=GetDC();
CRect rect;
GetClientRect(&rect);
CDC dcMem; //用于缓冲作图的内存DC
CBitmap bmp; //内存中承载临时图象的位图
dcMem.CreateCompatibleDC(pDC); //依附窗口DC创建兼容内存DC
bmp.CreateCompatibleBitmap(pDC,rect.Width(),rect.Height());//创建兼容位图
dcMem.SelectObject(&bmp); //将位图选择进内存DC
dcMem.FillSolidRect(&rect,RGB(255,0,0));//设置背景颜色
CPen pen,*pOldPen;
pen.CreatePen(PS_SOLID,7,RGB(255,0,0));
pOldPen=dcMem.SelectObject(&pen);
dcMem.Ellipse(400,100,600,300);//画圆
dcMem.Rectangle(470,170,530,230);//圆里的小正方形
dcMem.MoveTo(470,230);
dcMem.LineTo(400,300);
dcMem.MoveTo(400,100);
dcMem.LineTo(470,170);
dcMem.MoveTo(600,100);
dcMem.LineTo(530,170);
dcMem.MoveTo(600,300);
dcMem.LineTo(530,230);
dcMem.SetBkMode(TRANSPARENT);
dcMem.TextOut(485,130,"UP");
dcMem.TextOut(475,250,"DOWN");
dcMem.TextOut(430,200,"C");
dcMem.TextOut(550,200,"OK");
dcMem.SelectObject(pOldPen);
pen.DeleteObject();
CBrush brush[3];
brush[0].CreateSolidBrush(RGB(0,100,0));
dcMem.SelectObject(&brush[0]);
dcMem.Rectangle(50,100,380,300);//显示区域的大正方形
brush[1].CreateSolidBrush(RGB(255,255,255));
dcMem.SelectObject(&brush[1]);
dcMem.Rectangle(80,120,350,280);//显示区域的小正方形
/* brush[3].CreateHatchBrush(HS_CROSS,RGB(255,0,0));//网格线
dcMem.SelectObject(&brush[3]);
dcMem.Rectangle(80,120,350,280);
brush[3].CreateSolidBrush(RGB(255,0,0));
dcMem.SelectObject(&brush[3]);*/
//画内部格子
/* int x1=81,y1;
while(x1<=349)
{
y1=121;
while(y1<=279)
{
dcMem.Rectangle(x1-1,y1-1,x1+1,y1+1);
y1+=3;
}
x1+=3;
}*/
brush[2].CreateSolidBrush(RGB(255,0,0));
dcMem.SelectObject(&brush[2]);
int x,y;
x=82;y=122;
FILE *fp;
if ((fp = fopen("hzk16", "rb")) == NULL) {
// MessageBox("Can not find file 'HZK16'", "Error");
return;
}
char *s, buffer[16][2];
CString m_sin="我的项目小结一下";
s = (LPTSTR)(LPCTSTR)m_sin; // cast m_sin to char *s
unsigned char qh, wh;
unsigned long offset;
char *q;
for (int i = 0; i < 16; i++) { // output each line for characters at a time
q = s;
while (*q) {
qh = *(q) - 0xa0;
wh = *(q+1) - 0xa0;
offset = ( 94*(qh-1)+(wh-1) )*32; // offset from HZK16
fseek(fp, offset, SEEK_SET); // get there
fread(buffer, 32, 1, fp); // read a character into buffer
for (int j = 0; j < 2; j++) {
for (int k = 0; k < 8; k++)
if (buffer[i][j] & (0x80 >> k))
//m_TextOut += m_sfront;
{
dcMem.SetPixel(x,y, RGB(255,0,0));
// dcMem.SelectObject(&brush[2]);
// dcMem.Rectangle(x-1,y-1,x+1,y+1);
x+=2;
}
else
{
x+=2;
}
}
q += 2; // next character
}
y += 2;
x= 82;
}
//dcMem.SelectObject(pOldBrush);
if(m_C==1&&m_Lbtn==1)
{
dcMem.SelectObject(&brush[1]);
dcMem.Rectangle(80,120,35,280);
m_C=0;
m_Lbtn=0;
}
for(i=0;i<3;i++)
{
brush[i].DeleteObject();
}
pDC->BitBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,SRCCOPY);//将内存DC上的图象拷贝到前台
dcMem.DeleteDC(); //删除DC
bmp.DeleteObject(); //删除位图
// ReleaseDC(pDC);
CDialog::OnTimer(nIDEvent);
}
int CMyDlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CDialog::OnCreate(lpCreateStruct) == -1)
return -1;
SetTimer(1,10,NULL);
return 0;
}
void CMyDlg::OnDestroy()
{
CDialog::OnDestroy();
KillTimer(1);
}
- 项目小结
- 项目小结
- 项目小结
- 项目小结
- 项目小结
- 项目小结
- 项目小结
- 项目小结
- 项目小结
- 项目小结
- 100w项目小结
- 开发嵌入式项目小结
- Ext 项目小结
- 项目管理小结
- 项目知识点小结
- Flex 开发项目小结
- EInsurance项目小结
- 项目小结及心得体会
- MYSQL C API 访问程序(更新升级版本)
- MFC中各种字符串的转化
- ApacheBench(ab)压力测试使用和结果说明
- android中共享全局数据的方法
- 2010-10-27 从医院出来
- 项目小结
- vmwaretools 设置和windows共享文件夹
- 欢迎linux爱好者
- 内存泄露
- 算法问题:什么是P问题、NP问题和NPC问题【出自matrix67大神】
- IC610 and MMSIM61 installation
- 自定义图谱控件
- 简单高效多线程日志系统
- 基于 GTK+ 和 X-window 的 GUI 在嵌入式 Linux 中的应用