【简单的问题】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 );
这样运行得了吗?
展开
 我来答
L_o_o_n_i_e
2011-04-08 · TA获得超过4.2万个赞
知道大有可为答主
回答量:8507
采纳率:38%
帮助的人:5066万
展开全部
可以用 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.
追问
POINT point;
if(point.x,point.y=RGB(255,255,255))
{
}
这样子行不行呢?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
czn08wme
2011-04-09 · TA获得超过879个赞
知道答主
回答量:547
采纳率:0%
帮助的人:95.3万
展开全部
作用是在最小化状态下重绘窗口图标。

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吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式