如何按非客户区移动窗体

2016-01-29 11:52 16 1 收藏

如何按非客户区移动窗体,如何按非客户区移动窗体

【 tulaoshi.com - C语言心得技巧 】

如何按非客户区移动窗体


作者 浙江大学 王向伟

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com)


下载源代码

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com)
我曾在VCKBSAE上看到一介绍如何按非客户区移动窗体,既重载WM_NCHITTEST,返回HTCAPTION。但我认为有一点不妥就是没有了鼠标右键功能。这里我介绍一种方法,即可已在客户区移动窗体又可以实现鼠标右键功能。
1、新建一工程DLG。采用默认设置。
2、添加消息处理函数:
void CDlgDlg::OnLButtonDown(UINT nFlags, CPoint point) {    PostMessage(WM_NCLBUTTONDOWN,HTCAPTION,MAKELPARAM(point.x,pointy));    CDialog::OnLButtonDown(nFlags, point);}      
3、添加右键功能。已实现鼠标右键功能
void CDlgDlg::OnRButtonDown(UINT nFlags, CPoint point) {   CMenu menu,*sub;   menu.LoadMenu(IDR_MENU1);   sub=menu.GetSubMenu(0);   ClientToScreen(&point);   sub-TrackPopupMenu(TPM_RIGHTBUTTON,point.x,point.y,this);   CDialog::OnRButtonDown(nFlags, point);}      
其它实现细节请参见源代码。

来源:https://www.tulaoshi.com/n/20160129/1483701.html

延伸阅读
看完锤子发布会后,让我们也来恶补一下优秀的移动客户端界面设计吧,看看那些富有用户体验和交互设计精髓的作品究竟应该长神马样子?在以下这些优质画廊里,我们筛选了pinterest展示的一些最新案例,是一些极为壮观的菜单、按钮和UI元素。 Notification dropdown by Oykun ...
Response.Write("");
对于交互设计而言,移动手机客户端的横竖屏切换时,怎么切换就成了 一个普遍存在的问题。 课程内容 随着技术与用户体验的发展,移动客户端产品中越来越多的需要横竖屏切换的设计。横竖屏旋转切换的设计在理想的情况下保持不变就能满足用户的需求。但也有很多时候,横竖屏切换时用户操作行为和屏幕比例的改变决定了客户端产品在设计时必须做出...
import javax.swing.*; import java.awt.*; import java.awt.event.*; import javax.swing.UIManager; class Mywindow extends JFrame { JButton button1; JButton button2; JInternalFrame interframe1,interframe2; JPanel jpanel; Mywindow() { setVisible(true); //setSize(400,400)见下面的说明! jpanel=(JPanel)this.getContentPane(); ...
广东移动掌上服务厅客户端怎么注册   1、下载广东移动app到手机里,打开客户端,点击 我的移动 ,在点击 登录点击详情 2、 填入手机号,有密码就可以直接登录,没有密码的就点击动态密码,点击获取,手机将会短信验证码的呦,输入验证码就可以完成注册登录~ 图老师健康网温馨提示: 非广东用户用不了 ...

经验教程

451

收藏

17
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部