了解Windows窗体应用程序表单字段的工具

时间:2011-08-10 07:51:50

标签: winforms desktop-application spy++

我正在研究WinForm应用程序。 表单有许多字段/组件,但构建不良。 例如,一个字段在一个案例中用作用户名,在另一个案例中用作文件夹路径。代码维护得很差。

有可能当我运行应用程序和GUI时,我可以使用像'spy ++'这样的工具,它可以显示组件的“名称”(而不是ids)。例如,按钮的名称或标签的名称。

或者,如果我可以使用SPY ++代表“名字”,请告诉我?

1 个答案:

答案 0 :(得分:1)

我会通过向表单添加ToolTip控件并迭代每个控件并向每个控件添加Tool Tip消息来解决问题,该控件是控件的名称。

首先,将ToolTip对象添加到表单中(从设计器的“工具”部分。)您可以重命名它,但为了我的演示,我将其保留为默认名称toolTip1

接下来,将类似于我在下面发布的方法添加到表单的代码页中。 (我假设这是针对C#但代码很简单,可以很容易地修改为VB或C ++。)

public void AddNameToToolTip(Control c)
{
    toolTip1.SetToolTip(c, c.Name);
    foreach (Control child in c.Controls) AddNameToToolTip(child);
}

最后,在Form构造函数中,在调用InitializeComponent()之后添加以下代码行。

AddNameToToolTip(this);

这会向表单中的每个控件添加一个ToolTip消息。您只需将鼠标悬停在每个控件上,工具提示将在显示基础控件名称的一两秒后弹出一条消息。

或者,您可以递归地向每个控件添加MouseHover事件,并在触发事件时,将控件的名称写入调试器。如果您已在表单中使用ToolTip控件,这也可以使用。