Solved

How toenble & disable edit boxes

Posted on 1998-12-07
2
213 Views
Last Modified: 2013-12-03
Hi everyone. Just when you thought it was safe to look at a question. I'm back!

Still doing edit & static controls in dialog boxes.
I would like to display and remove boxes depending on selection in checkbox.
eg. click checkbox and change an edit box from enabled to disabled to enabled etc.

case      IDC_CHECKBOX:
{                        if(1==SendMessage(GetDlgItem(hdlg,IDC_CHECKBOX),BM_GETCHECK,0,0))
{SetWindowLong(
GetDlgItem(hdlg,IDC_TEXTBOX),      // handle of window
GWL_STYLE,      // offset of value to set
ES_RIGHT | WS_BORDER | WS_TABSTOP        // new value
);
                                                MessageBox(hdlg,"Clicked","",MB_OK | MB_ICONINFORMATION);
}
else
{SetWindowLong(
GetDlgItem(hdlg,IDC_TEXTBOX),      // handle of window
GWL_STYLE,      // offset of value to set
ES_RIGHT | WS_BORDER | WS_TABSTOP | WS_DISABLED       // new value
);
MessageBox(hdlg,"UNClicked","",MB_OK | MB_ICONINFORMATION);
}
break;
}

I know that the message is being seen as the correct MessageBox is shown when I click the checkbox. All that happens though is it disables the edit box permanentley.
Like I say, I would really like it to disapear the become visible when I want it to be.
I am sure this must be trivial but I've been trying to do this for three nights now (It is a home project and it's driving me mad)
Regards to U all.
dsch
P.S.
Please no MFC or OWL
The app is win32 written in c++
0
Comment
Question by:dsch
2 Comments
 
LVL 6

Accepted Solution

by:
snoegler earned 60 total points
ID: 1416825
Take a look at EnableWindow(). I've never had problems with the code below:

BOOL bEnable;
EnableWindow(GetDlgItem(hDlg, IDC_EDIT), bEnable);
0
 
LVL 1

Author Comment

by:dsch
ID: 1416826
That's great, I originally just wanted to grey out the box and disable it which that does. Thanks.
In fact, I've just found ShowWindow(I didn't realise you could use it for anything) and it works in a similar way to EnableWindow, SW_HIDE & SW_SHOW sort that out.
Regards and thanks
Dsch
0

Featured Post

Are your AD admin tools letting you down?

Managing Active Directory can get complicated.  Often, the native tools for managing AD are just not up to the task.  The largest Active Directory installations in the world have relied on one tool to manage their day-to-day administration tasks: Hyena. Start your trial today.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article shows how to make a Windows 7 gadget that accepts files dropped from the Windows Explorer.  It also illustrates how to give your gadget a non-rectangular shape and how to add some nifty visual effects to text displayed in a your gadget.…
This article describes how to programmatically preset the "Pages per Sheet" option that's available with most printer drivers.   This setting lets you do "n-Up" printing, where two, four, or more pages are printed on each sheet of paper. If your …
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
Microsoft Active Directory, the widely used IT infrastructure, is known for its high risk of credential theft. The best way to test your Active Directory’s vulnerabilities to pass-the-ticket, pass-the-hash, privilege escalation, and malware attacks …

821 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question