2011-01-25 81 views
0

我使用Win32 API的這樣創建的編輯控件:Win32 API的編輯控制不能被選擇或編輯

CreateWindow的( 「編輯」, 「」,WS_CHILD | WS_VISIBLE,0,m_position, CONTROLS_WIDTH,EDITBOX_HEIGHT, m_editorWindow, (HMENU)GetNextComponentID(), m_instance,NULL)

我可以更改使用SetWindowText函數從它的內容,但我無法選擇它或編輯它的內容 - 這是編輯控件的目的,或者不是?:))

我在MSDN http://msdn.microsoft.com/en-us/library/bb775458%28VS.85%29.aspx上閱讀,我必須使用Edit_enable,但我不知道在哪裏可以找到瘦宏,我也不知道如何啓用編輯。當我將光標移到它上面時,光標變爲標準編輯光標。

謝謝你的幫忙!

+1

從你的代碼片段中不是很明顯,也不是典型的行爲。如果您想要某人調試它,請將一個小型repro項目發佈到文件共享服務或粘貼bin。 – 2011-01-25 16:30:32

回答

1

它與SetFocus(hwnd)功能。

-1

你試過:

GetDlgItem(EditControlID)->EnableWindow(TRUE); 

笑哎呀。

+0

它不起作用。它仍然沒有被選中,也不能編輯 – Felics 2011-01-25 15:06:02

+0

這是MFC,而不是Win32 API。 – 2011-01-25 18:53:28

1

或者你可以嘗試:

HWND myWindow = CreateWindow("edit", "", WS_CHILD | WS_VISIBLE, 0, m_position, CONTROLS_WIDTH, EDITBOX_HEIGHT, m_editorWindow, (HMENU)GetNextComponentID(), m_instance, NULL);

EnableWindow(myWindow, true);