Inspect 无法识别 win32 可编辑文本框

Inspect doesn't recognize win32 editable textbox

我开发了一个 win32 应用程序 (c++),现在,我想使用 Inspect (SDK) 进行一些自动化测试。

我的问题是 Inspect 无法识别 EDIT 个盒子。我的意思是 Inspect 无法区分他们的名字。它可以看到有多个 EDIT 框,但它们都被命名为 "none" 恰好是空值。这些名称始终为空,即使我使用 LPCTSTR lpWindowName 参数

初始化它们也是如此
// Create an edit box
    hEdit = CreateWindowEx(WS_EX_CLIENTEDGE,
        _T("EDIT"),
        _T("I JUST WANT TO BE SEEN !"),
        WS_CHILD|WS_VISIBLE|
        ES_MULTILINE|ES_AUTOVSCROLL|ES_AUTOHSCROLL,
        50,
        100,
        200,
        100,
        hWnd,
        (HMENU)IDC_MAIN_EDIT,
        GetModuleHandle(NULL),
        NULL);

我也试过用setWindowText的方法设置名称,但也不管用。 这两种方法在 BUTTON 上工作正常,但在 EDIT.

上不起作用

有没有人提供线索?

可以使用动态注释设置名称(或控件的任何其他 属性)。 另外,如果是普通控件,可以通过在 .rc 文件中添加隐藏标签来设置名称。否则你将不得不使用动态注释。

如果您想设置其中之一:

-NAME                  -KEYBOARDSHORTCUT
-DESCRIPTION           -DEFAULTACTION
-ROLE                  -VALUEMAP
-STATE                 -ROLEMAP
-HELP                  -STATEMAP.

您必须使用直接注释或服务器注释。 但是如果你想设置其中之一:

-FOCUS                 -RIGHT
-SELECTION             -PREV
-PARENT                -NEXT
-UP                    -FIRSTCHILD
-DOWN                  -LASTCHILD
-LEFT

只有服务器注释允许您这样做。

以下是有关动态注释的更多详细信息: http://msdn.microsoft.com/en-us/windows/desktop/gg712214.aspx

如果您想在自定义控件上进行动态注释,这里有更多详细信息: http://msdn.microsoft.com/en-us/windows/cc307845.aspx