Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

How toenble & disable edit boxes

Posted on 1998-12-07
2
Medium Priority
?
220 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 6

Accepted Solution

by:
snoegler earned 240 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

Learn Veeam advantages over legacy backup

Every day, more and more legacy backup customers switch to Veeam. Technologies designed for the client-server era cannot restore any IT service running in the hybrid cloud within seconds. Learn top Veeam advantages over legacy backup and get Veeam for the price of your renewal

Question has a verified solution.

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

This article shows a few slightly more advanced techniques for Windows 7 gadget programming, including how to save and restore user settings for your gadget and how to populate the "details" panel that is displayed in the Windows 7 gadget gallery.  …
With most software applications trying to cater to multiple user needs nowadays, the focus is to make them as configurable as possible. For e.g., when creating Silverlight applications which will connect to WCF services, the service end point usuall…
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…
In this video, Percona Director of Solution Engineering Jon Tobin discusses the function and features of Percona Server for MongoDB. How Percona can help Percona can help you determine if Percona Server for MongoDB is the right solution for …

650 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