摘要:
最近在弄程序的时候,碰到需要在主窗口最小化的时候,自动将其子窗口最小化的问题。当时没想通。不过现在明白了,其实就是在窗口大小变化的事件里判断主窗口是否最小化的。然后进行相应的操作即可。如果是在SDK程序, 或者VC中可能用不着这样麻烦了,直接在消息循环中进行相应的操作即可。呵呵,其它的语言,就用这方法吧。。。下面是网上的一些资料:我们首先要知道窗口什么时候最小化。但是窗口消息中并没有最小化这个消息,经过一番查找,发现最小化竟而藏在了WM_SIZE这个消息的wParam参数中了。我们在这里就利用窗口的WM_SIZE消息来获取窗口最小化的消息。首先我们要了解一下WM_SIZE消息是什么时候产生的。 阅读全文
摘要:
WM_SYSCOMMAND Notification当用户从窗口菜单选择一个命令或当用户选择最大化按钮,最小化按钮,复原按钮或关闭按钮时,一个窗口将会接收该消息SyntaxWM_SYSCOMMANDWPARAM wParamLPARAM lParam;参数wParam指定系统命令的类型。该参数可以是下列值之一:SC_CLOSE关闭窗口 SC_CONTEXTHELP将光标改为一个问题标识样式。如果用户之后点击了对话框中的一个控件,该控件会收到一个WM_HELP消息。SC_DEFAULT当用户双击窗口菜单时,选择默认的条目。SC_HOTKEY以应用程序指定的热键激活窗口。lParam参数标识了所要 阅读全文
摘要:
可以用WM_ACTIVATE消息来替代消息: WM_ACTIVATE参数: fActive = LOWORD(wParam); // activation flag fMinimized = (BOOL)HIWORD(wParam); // minimized flag hwndPrevious= (HWND)lParam; // window handlefActive 参数主要定义了该窗口发生了什么事情,即该窗口是被激活还是被取消。该信息保存在 wParam 的低阶字中,可以取以下的值:---------------------------------------------------- 阅读全文
摘要:
UPDATE_COMMAND_UI 处理菜单对应的用户界面COMMAND 处理该菜单对应的功能传统SDK程序;要改变选单命令项状态,可以呼叫EnableMenuItem或是CheckMenuItem,但这使得程序杂乱无章,因为你没有;个固定的位置和固定的原则处理命令项状态。MFC提供;种直觉并且仍旧依赖讯息观念的方式,解决这个问题,这就是UPDATE_COMMAND_UI讯息。其设计理念是,每当选单被拉;并尚未显示之前,其命令项(以及对应之工具栏按钮)都会收到UPDATE_COMMAND_UI讯息,这个讯息和WM_COMMAND有㆒样的绕行路线,我们(程序员)只要在适当的 阅读全文
摘要:
一、所有者绘制(owner-draw)和自定义绘制(custom-draw)一、给控件添加排序功能report风格的list控件很多情况下都需要支持排序功能,而且最好支持按不同列进行排序。CListCtrl的类方法SortItems支持排序功能,但是在排序过程中,两个数据真正的比较过程是通过SortItems的第一个参数指向的回调比较函数来完成的。这个函数通过比较SetItemData函数设置的每个Item对应数值,返回一个代表比较结果的值,SortItems便可以依据这个返回值进行排序实现。可以看出,这种方法虽然简单,却有一个比较严重的缺陷,即不能支持按照不同列数据进行排序。对于自绘控件来说 阅读全文