Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Beginner
27 Views

Getting text from an edit box control

I am writing a simple windows application and in my main window message processing function I create a child window that is an edit box:

        btn = ior(ior(WS_CHILD, WS_VISIBLE), ES_LEFT)
        hEdt2 = CreateWindowEx(WS_EX_CLIENTEDGE, "Edit"C, ""C, btn, 101, 134, 100, 20, hWnd, 10, ghInstance, NULL)

This executes correctly and I get a child window that is an edit box control. Note that this child window resides in the client area of my main window; it is not part of a dialog box.

I enter text into this edit box and I want to read that text into a character variable. I tried the GetWindowText(hEdt2, ...) function and that returned an empty string. I tried SendMessage(hEdt2, WM_GETTEXT, ...) and SendMessage(hEdt2, EM_GETLINE, ...), and they also returned empty strings. How can I read the text from an edit box control that is not part of a dialog box?

Thanks!

 

0 Kudos
4 Replies
Highlighted
Valued Contributor III
27 Views

Both method should work but remember if your string is gbuf you will probably need  to pass loc(gbuf) in the LPTSTR for the Sendmessage

0 Kudos
Highlighted
Valued Contributor I
27 Views

not 'probably' --

rval = SendControlMessage (hwnd, controlId, WM_GETTEXT, length, LOC(contents))

 

0 Kudos
Highlighted
Beginner
27 Views

My bad - I forgot to declare the edit box handle with the "save" attribute. When I did, both GetWindowText and SendMessage (using loc function) worked correctly.

Thanks for your help.

0 Kudos
Highlighted
Valued Contributor III
27 Views

Glad you fixed It Steven,

@Paul, LOL yes not "probably need", I think I meant "probably need to add because you maybe haven't already"  

0 Kudos