【简单的问题】MFC里面用什么代码来表示一个点的位置?用什么代码表示退出程序?
我想这样子编辑:如果那个点的颜色是黑色RGB(255,255,255),那么就退出程序CClientDCdc(this);CBitmapbmp;bmp.LoadBitma...
我想这样子编辑:如果那个点的颜色是黑色RGB(255,255,255),那么就退出程序
CClientDC dc(this);
CBitmap bmp;
bmp.LoadBitmap(DOOR_BLUE); //
CDC tDC;
tDC.CreateCompatibleDC( &dc );
tDC.SelectObject( &bmp);
dc.BitBlt( 20, 30, 2*20, 2*30, &tDC, 0, 0, SRCCOPY );
这样运行得了吗? 展开
CClientDC dc(this);
CBitmap bmp;
bmp.LoadBitmap(DOOR_BLUE); //
CDC tDC;
tDC.CreateCompatibleDC( &dc );
tDC.SelectObject( &bmp);
dc.BitBlt( 20, 30, 2*20, 2*30, &tDC, 0, 0, SRCCOPY );
这样运行得了吗? 展开
展开全部
可以用 POINT,它是MFC定义的一个结构,x,y 是坐标
ypedef struct tagPOINT {
LONG x;
LONG y;
} POINT;
例如:
POINT ptA;
ptA.x = 370;
ptA.y = 550;
POINT ptB = {370,550};
---
退出程序,exit(0); 就退出了。
MFC 用来写 视窗程序,一般不这么退出,而是手工退出,例如揿右上角的叉,选File里的Exit.
ypedef struct tagPOINT {
LONG x;
LONG y;
} POINT;
例如:
POINT ptA;
ptA.x = 370;
ptA.y = 550;
POINT ptB = {370,550};
---
退出程序,exit(0); 就退出了。
MFC 用来写 视窗程序,一般不这么退出,而是手工退出,例如揿右上角的叉,选File里的Exit.
追问
POINT point;
if(point.x,point.y=RGB(255,255,255))
{
}
这样子行不行呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
作用是在最小化状态下重绘窗口图标。
IsIconic()作用是判断窗口是否处于最小化状态(点击了最小化按钮之后)。
对于普通的对话框来说,如果你在if (IsIconic()) 下面加入AfxMessageBox("haha") ,你会发现消息框并不会弹出。
原因是,if (IsIconic()) 这段代码是在OnPaint()函数内,当你最小化了对话框之后,虽然IsIconic()的值是TRUE,但是OnPaint()函数并不会运行。因为OnPaint()响应的是WM_PAINT消息,而WM_PAINT消息是针对客户区的。一个最小化了的窗口不需要重绘客户区。
为了验证这一点,可以设置一定时器,在OnTimer()函数里写上
if(IsIconic()) MessageBeep(MB_OK);
当你点击最小化按钮后,你会听见嘟嘟声。
那么这段代码究竟有什么用?它是不是永远不会被执行呢?当然不是。举两个例子。
第一,如果你强行发送WM_PAINT消息,它会执行。
第二,特殊的对话框。比如一个ToolBox风格的对话框。这个对话框不显示在任务栏,在最小化之后它会变成一个很小的一条显示在桌面上。这时如果它被遮挡,就会出发WM_PAINT消息,从而执行那段代码。
总之,一般情况下可以不要这段代码,它的特殊用途我也不是很了解,但是我们至少可以知道它是怎么样工作的。
IsIconic()作用是判断窗口是否处于最小化状态(点击了最小化按钮之后)。
对于普通的对话框来说,如果你在if (IsIconic()) 下面加入AfxMessageBox("haha") ,你会发现消息框并不会弹出。
原因是,if (IsIconic()) 这段代码是在OnPaint()函数内,当你最小化了对话框之后,虽然IsIconic()的值是TRUE,但是OnPaint()函数并不会运行。因为OnPaint()响应的是WM_PAINT消息,而WM_PAINT消息是针对客户区的。一个最小化了的窗口不需要重绘客户区。
为了验证这一点,可以设置一定时器,在OnTimer()函数里写上
if(IsIconic()) MessageBeep(MB_OK);
当你点击最小化按钮后,你会听见嘟嘟声。
那么这段代码究竟有什么用?它是不是永远不会被执行呢?当然不是。举两个例子。
第一,如果你强行发送WM_PAINT消息,它会执行。
第二,特殊的对话框。比如一个ToolBox风格的对话框。这个对话框不显示在任务栏,在最小化之后它会变成一个很小的一条显示在桌面上。这时如果它被遮挡,就会出发WM_PAINT消息,从而执行那段代码。
总之,一般情况下可以不要这段代码,它的特殊用途我也不是很了解,但是我们至少可以知道它是怎么样工作的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-04-08
展开全部
用数据结构POINT ,存放X,Y坐标。你要先获得它的坐标,然后再获得颜色吧。查一下MSDN吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询