相关疑难解决方法(0)

单击关闭按钮时隐藏表单而不是关闭

当用户单击X表单上的按钮时,如何隐藏它而不是关闭它?

我曾尝试this.hide()FormClosing,但它仍然关闭窗体.

.net c# winforms

58
推荐指数
4
解决办法
5万
查看次数

如何将鼠标悬停在最小化,最大化和关闭按钮上?

在Delphi应用程序中,当您将鼠标悬停在边框图标上时,例如:

  • 最小化
  • 最大化
  • 恢复

它行为不正确:

在此输入图像描述

与行为正确的应用程序进行比较:

在此输入图像描述

重现的步骤

  1. 单击文件,新建,VCL表单应用程序 - Delphi
  2. 单击运行(F9)
  3. 将鼠标悬停在最小化,最大化或关闭按钮上.

怎么修?

  • Windows 10,64位(在台式机上本机运行)
  • 德尔福XE6

编辑 - Delphi 7也失败了:

在此输入图像描述

在Delphi 5中:

在此输入图像描述

在Delphi 4中:

在此输入图像描述

我假设(即害怕)它是由ThemeServices引擎引起的; 他们可能认为不尊重用户的偏好很酷.但看起来它更基本.

兼容模式

  • none:失败
  • Windows 8:失败
  • Windows 7:失败
  • Windows Vista(Service Pack 2):失败
  • Windows Vista(Service Pack 2):失败
  • Windows Vista:失败
  • Windows XP(Service Pack 3)(禁用非客户区域主题):有效
  • Windows XP(Service Pack 2)(禁用非客户区域主题):有效
  • Windows 98/Windows Me(禁用非客户区域主题):有效
  • Windows 95(非客户区域主题禁用):工作

Skype的

Skype也失败了; 也用Delphi编写:

在此输入图像描述

高DPI是触发器

我终于找到了为什么它在我使用的每台Windows 10机器上都失败了; 但不适合所有人.高dpi.

将dpi设置为97(101%)或更高.

足够近 …

delphi vcl delphi-xe6 windows-10

20
推荐指数
1
解决办法
2107
查看次数

如何从无模式窗体中显示模态对话框?

我有两种"无模式"形式:

  • 一个是特殊的MainForm
  • 另一种是无模式

在此输入图像描述

你可以看到:

  • 两者都存在于任务栏上
  • 两者都有一个任务栏按钮
  • 两者都可以独立最小化
  • 两者都可以独立恢复
  • 两者都不总是在另一方的顶层(拥有)

现在显示一个模态形式

从这种无模式的形式,我想展示一个模态:

在此输入图像描述

模态形式被构造为:

var
    frmExchangeConfirm: TfrmExchangeConfirm;
begin
    frmExchangeConfirm := TfrmExchangeConfirm.Create(Application);
    try
        //Setting popupMode and popupParent still makes the MainForm disabled
//      frmExchangeConfirm.PopupMode := pmExplicit;
//      frmExchangeConfirm.PopupParent := Self; //owned by us

        frmExchangeConfirm.OwnerForm := Self; //tell the form which owner to use
        frmExchangeConfirm.ShowModal;
    finally
        frmExchangeConfirm.Free;
    end;
Run Code Online (Sandbox Code Playgroud)

模态表单被告知通过新OwnerForm属性使用哪个所有者:

protected
   procedure SetOwnerForm(const Value: TForm);
public
   property OwnerForm: TForm read GetOwnerForm write SetOwnerForm;
end;
Run Code Online (Sandbox Code Playgroud)

这迫使手柄娱乐:

procedure TfrmExchangeConfirm.SetOwnerForm(const Value: …
Run Code Online (Sandbox Code Playgroud)

delphi delphi-xe6

9
推荐指数
1
解决办法
3687
查看次数

标签 统计

delphi ×2

delphi-xe6 ×2

.net ×1

c# ×1

vcl ×1

windows-10 ×1

winforms ×1