不希望形式最小化

时间:2009-06-03 07:51:52

标签: delphi minimize

是否可以禁止在Delphi中最小化表单\ application?

我找到了以下代码:

procedure TForm1.WMShowWindow(var Msg: TWMShowWindow);
begin
  if not Msg.Show then
    Msg.Result := 0
  else
    inherited;
end;

但如果我按下Windows键+ M或WindowsKey + D,它仍然会被最小化。 有办法防止这种情况吗?

3 个答案:

答案 0 :(得分:11)

将BorderIcons.bsMinimized设置为false(从集合中删除)将适用于WindowsKey + M,但不会停止WindowsKey + D.我认为这是有道理的。两者之间的区别是第一个是要求所有窗口最小化,而第二个是用户明确请求查看其桌面。覆盖后者可能会使用户烦恼(类似于强迫自己集中注意力)。

答案 1 :(得分:2)

或者你可以放置一个键盘钩子并抓住winkey + d或winkey + m并保持你的形式最大化。

答案 2 :(得分:0)

只需将表单 onShow 这样的代码添加到

  WindowState:=wsMaximized;

OnCanResize

  if (newwidth<width) and (newheight<height) then
    Resize:=false;