如何将窗体放在顶部,并使键盘的WIN+M失效(50分)

  • 主题发起人 主题发起人 wc
  • 开始时间 开始时间
什么叫做"键盘的WIN+M"? 简直是浪费俺老人家的功夫...
 
"老屯": your time means nothing if youdo
not know 键盘的WIN+M
 
放在顶部:
Form.FormStyle := fsStayOnTop;
或:
SetWindowPos(Self.Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or
SWP_NOSIZE or SWP_NOACTIVATE);
不太好拦住 VK_LWIN / WK_RWIN + M。
 
form 的 borderstyle 改为 bsNone. 呵呵。
 
Form.FormStyle := fsStayOnTop
win+M估计要用hook了。
 
form 的 borderstyle 改为 bsNone. 并没有用。
至于其他方法请详细说明。我乃一初学者,谢谢!!!
 
用Ahm的控件吧,其中有一个就是把窗体置为顶端的。
 
win+m是最小化吧
试试把bordericon里面最小化那一个给去掉
或者把系统菜单(GetSystemMenu)里"最小化"那一项删除掉(或disable)
如果还不行,设个钩子截获windows的键盘消息吧
 
TNND,才搞明白, WIN+M是最小化窗体的快捷键, 作一个消息处理, 劫持WM_SysCommand消息
如果它的 uCmdType = SC_MINIMIZE 不作处理, 让Result := 0, 否则调用缺省的消息处理
 
多人接受答案了。
 
后退
顶部