scott@rdahp.UUCP (Scott Hammond) (12/08/89)
I'm new to Microsoft Windows, and I'm trying to fix code written by
someone else. :-(
Is there a way to guarantee that the text set with the SetDlgItemText()
function will be returned by a subsequent GetDlgItemText()? I'm seeing
a situation where the GetDlgItemText() is getting the previous text even
though I'm certain that the SetDlgItemText() was done.
I find that a MessageBox() routine between the Set and Get causes the
problem to go away.
Related information:
In this same dialog box, there is a pushbutton defined for IDOK. If the
focus is in an edit control window, pushing the button sends the edit
control window a KILL_FOCUS, but then the pushbutton window turns black
and the IDOK is not sent. A second click on the pushbutton does send
the IDOK. I don't understand why the second click is required, or what
Windows is telling me I did wrong by blackening the button.
Relating this to my original question, the SetDlgItemText() occurs while
handling the KILL_FOCUS, and the GetDlgItemText() occurs while handling
the IDOK. BUT, in this situation the GetDlgItemText() returns the
correct data. However if, rather than clicking the button, I hit
<ENTER>, the KILL_FOCUS and IDOK are both sent, but GetDlgItemText()
returns the old data.
Any comments or suggestions would be appreciated. Please email, I'll
summarize if there is interest. Thanks in advance.
--
Scott Hammond, R & D Associates, Marina del Rey, CA (213) 822-1715
: {tah386,ladcgw,<site-with-router>}!rdahp!scott
: scott@harris.cis.ksu.edu