【问题标题】:Show a tooltip on the Close (X) button on the form在表单上的关闭 (X) 按钮上显示工具提示
【发布时间】:2013-02-26 03:44:45
【问题描述】:

我有一个表单,当用户单击 Close (X) 按钮时,我禁止用户关闭它。是否可以在单击 Close (X) 按钮时显示工具提示?我想这样做是为了通知用户为什么表单不会关闭。

我想到了一个消息框,但我觉得每次点击关闭(X)按钮时都关闭消息框太烦人了。

有没有比我尝试做的更好的方法来通知用户?

编辑:

这是我的 FormClosing 事件代码

    private void InputForm_FormClosing(object sender, FormClosingEventArgs e)
    {
        if (e.CloseReason == CloseReason.UserClosing)
        {
            e.Cancel = true;
            if (!mCloseReason)
            {
                e.Cancel = false;
            }
        }
    }

我有一种方法可以将输入保存在表单中。一旦该方法完成,我需要自动关闭表单。一旦我调用 this.Close()if 语句 将为 true,这意味着我无法关闭表单。这就是为什么我使用了一个名为 mCloseReason 的变量来自动关闭表单。现在,这就是为什么我问我是否可以在单击 Close (X) 按钮后通过工具提示通知用户。

【问题讨论】:

  • 我不确定是什么情况,但最好显示关闭按钮的禁用状态吗?工具提示有点不寻常。
  • 没有。我正在使用 DevExpress 在表单上应用皮肤,并且不显示关闭按钮的代码 sn-p 不适用于 DevExpress。
  • 我认为允许用户随时点击取消按钮来关闭表单是标准行为。否则,如果他们点击 OK 或 Apply 按钮,但在其他控件上的输入不正确,那将是显示错误消息的好时机。这是一篇关于 UI 设计的精彩文章:joelonsoftware.com/uibook/fog0000000249.html.

标签: c# forms notify


【解决方案1】:

我相信关闭(X)按钮的默认工具提示在没有一些黑客攻击的情况下是不可编辑的(而且它不实用)。

也许您可以做的是在表单下方有一个状态字段,因此当用户单击关闭按钮时,它会在状态字段中显示“无法关闭表单(...)”

或者另一种想法是在表单的某个地方弹出一条消息,稍等片刻就消失了,表明表单无法关闭。

Roger 提到了另一个好主意... 只是在表单的某处有一个带有工具提示编码的关闭按钮,然后隐藏表单的标题栏?

【讨论】:

  • 我只是在关闭 (X) 按钮底部附近放置了一个标签,使其不可见,然后在那里显示工具提示。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-10-09
  • 2016-12-29
  • 1970-01-01
  • 2014-07-29
  • 2010-09-15
  • 1970-01-01
  • 2012-08-07
相关资源
最近更新 更多