Link to home
Start Free TrialLog in
Avatar of cneaton
cneaton

asked on

Disappearing Dialog

I have dialog-based application in which a dialog box is displayed once the user presses a button on the initial screen.  The problem is if the user presses the "ENTER" key in one of the edit boxes of the dialog box, the dialog box closes and the focus shifts back to the initial screen.  How can I make it so that the dialog box does not close (or disappear) until the user presses the "OK" button?
ASKER CERTIFIED SOLUTION
Avatar of jhance
jhance

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of chual
chual

Your "OK" button is set as default button. As a result, Pressing the "ENTER" button will amount to clicking on the "OK" button. Change the style of the "OK" button by unchecking the "Default" style.

chua
I meant changing the properties of the "OK" button by unchecking the "Default button" style.
Avatar of Meir Rivkin
do u have an OK button on your dialog?
if u do, change its ID to ID_OK and handle its click:
CDialog::OnOK();
Since he still wants to allow the user clicking OK to close the dialog box, he does not need to do anything with his OnOK() handler. Simply changing the property of the OK button will do the job.
hi cneaton,

how are you getting along with your problem? were you able to get it work or you still need more clarification?

chual
The comments given previously will exactly predict ur problem and u can solve them easily. I will give it some more clear (It will be useful if u are a biginner).

Please know some some thing about the property Default of a push button.

When u log into windows or some other application u might have found that after typing ur password just pressing enter will (accepts ur password) close the login dialog and logs u in (Keep in mind that u haven't pressed the OK button). This happens because of the Default property of the OK Button.

If u press Esc key on the same dialog u might have found the dialog closes ignoring ur password and other changes this is due to the Cancel property of the Cancel Button in the doalog.

As in the previous comments remove the Default property of the OK button. To do that right-click on the OK button select properties. in the properties dialog go to styles Tab there uncheck the Default Button check box.
If ur dialog still closes due to Esc/Enter Keys I will give u the code to remove that (if u want it) !!
Hi,
 Open the EditBox properties window and check mark the  style "Want Return", this will solve the problem.
-- PK
Avatar of cneaton

ASKER

Hello everyone, and thanks for the comments.  My dialog didn't have an "OK" button on it, so I just overrode the OnOK function since the dialog equated pressing the "ENTER" key to hitting the OK button.  Thanks again for all of your help!