几个消息的问题

commandconque 2003-12-01 10:30:09
1.鼠标的左键拖动的消息是什么?
2.鼠标右键拖动的消息是什么?
系统有没有现成的消息?
3.我的程序(MFC)在处理对话框后,推出对话框后在框架(FRAME)上留下空白区域,非要最小话或最大话一次,才能清除。先不管他如何产生的,请问如何重画框架
...全文
107 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
commandconque 2003-12-31
  • 打赏
  • 举报
回复
我想实现想CAD等软件中的工具栏,可以动态出来,又动态的清除。
并且在工具栏上还有多个控件,不知道大家用什么方式实现呢?
modena 2003-12-10
  • 打赏
  • 举报
回复
另外说明一下:
ControlBar系列(CDialogBar/CToolBar/CReBar)是属于框架Frame的,而不是视图的
modena 2003-12-10
  • 打赏
  • 举报
回复
一般来说ControlBar系列都不会动态创建和销毁,直接通过ShowControlBar可以显示和隐藏,再通过调用Frame的RecalcLayout()就可以了,我测试过是可以的
不知道你为什么要动态的删除该DialogBar,最近比较忙,有空我试一下
commandconque 2003-12-05
  • 打赏
  • 举报
回复
我直接在销毁DialogBar后使用RecalcLayout(),好像不起任何作用,问题还在那,
我不清楚如何隐藏DialogBar?DialogBar的 成员函数好像没有,请告诉本人?
谢谢!
commandconque 2003-12-04
  • 打赏
  • 举报
回复
让我试试
modena 2003-12-02
  • 打赏
  • 举报
回复
系统提供的CDialogBar不处理大部分消息,包括WM_INITDIALOG/WM_DESTROY等
关闭/显示DialogBar我觉得应该在Frame中操作
在Frame中显示/隐藏DialogBar后调用RecalcLayout();
wangweixing2000 2003-12-01
  • 打赏
  • 举报
回复
这标记用Down,Up,Move组合一下
modena 2003-12-01
  • 打赏
  • 举报
回复
3的可能原因:
1.OnNcPaint中未处理或者处理不正确
2.外部窗口关闭时未能触发OnNcPaint,需要手工触发
wangweintk 2003-12-01
  • 打赏
  • 举报
回复
不合理的地方,要找原因,然后纠正,建议不要补补丁。
wangweintk 2003-12-01
  • 打赏
  • 举报
回复
1.2.鼠标左键按下的消息WM_LBOTTONDOWN
鼠标右键按下的消息WM_RBOTTONDOWN
结合鼠标移动消息WM_MOUSEMOVE

3.为什么非要最大化,最小化一次才能清除?
modena 2003-12-01
  • 打赏
  • 举报
回复
1,2捕获并处理WM_MOUSEMOVE
3,GetWindowDC()
GetWindowRect()并通过CombineRgn去除GetClientRect()区域形成框架区域
在框架区域内自画
处理Mouse的Down,Up,Move消息控制按钮/窗口

比较麻烦,网上应该有现成的例子
commandconque 2003-12-01
  • 打赏
  • 举报
回复
我本想偷懒,看来还得老实的使用组合了!
3.我的程序是在视图中建立一个CDialogBar 窗体,
就象WORD中的“格式”工具栏(其中包括组合框和按钮),每次退出(应该是关闭他时)他占用的区域不会消除,但使用窗体的最大或最小,有时干脆再另件一个CDialogBar 窗体,才能清除该区域。
我使用的是CDialogBar的构析函数才能去掉。我曾在网上询问过不用构析的方法,有人说使用destroy,但系统运行中报错。
我使用 OnNcPaint( );函数还是不能清除该区域。
大家能否给个其他办法??我头都要晕了
ddddh 2003-12-01
  • 打赏
  • 举报
回复
1.2.
拖放是WM_DROPFILES 消息

右键好像没有什么拖放的消息,不过你可以在buttondown的时候设立一个标记,然后再mousemove的时候处理。buttonup的时候清除这个标志。

3.你应该说得更详细一点。

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧