Solved

VC++ 5.0 GUI doubt

Posted on 1998-11-10
9
206 Views
Last Modified: 2010-04-02
i would like to know how could i place a button at runtime into my dialog box ?
0
Comment
Question by:charul
  • 3
  • 3
  • 2
  • +1
9 Comments
 

Author Comment

by:charul
ID: 1177473
none
0
 

Author Comment

by:charul
ID: 1177474
Edited text of question
0
 
LVL 6

Expert Comment

by:thresher_shark
ID: 1177475
The simplest solution to your problem would be to have the button exist all the time in the dialog, but have it hidden.  You can change the visible status by going to the button's properties.  Then, when you need the button, use something like GetDlgItem (YOUR_BUTTON_RESOURCE_IDENTIFIER)->ShowWindow (SHOW);

If you have any questions on implementing this solution, please feel free to ask.  Thanks!
0
 
LVL 32

Accepted Solution

by:
jhance earned 100 total points
ID: 1177476
If you're using MFC here is how to do it:

   CButton  xbutton = new CButton();
    xbutton->Create(
        "Some Name",
        WS_CHILD | WS_VISIBLE | WS_BORDER,
        CRect(0, 240, 200, 270), this, XBUTTON
    );
0
Threat Intelligence Starter Resources

Integrating threat intelligence can be challenging, and not all companies are ready. These resources can help you build awareness and prepare for defense.

 
LVL 6

Expert Comment

by:thresher_shark
ID: 1177477
jhance - Don't you think my solution would be easier since you wouldn't need to worry about coordinates and things of that nature?  You would be able to place the button using the Resource Editor which is much easier than:
1) Choose coordinates
2) Compile
3) Does it look right?  If no, go to 1.

?
0
 
LVL 8

Expert Comment

by:Answers2000
ID: 1177478
I would do it your way thresh if there's only 1 or 2 buttons, use ShowWIndow to show/hide buttons, use EnableWindow to enable/disable buttons

I haven't tested it out - but does the button created dynamically in jhance's way get added to the keyboard sequence (e.g. can you tab to it, and then off it to another control).  I seem to recall, it won't on a dialog, unless you also make the dialog handle the tabbing about messages...but this is fuzzy, so perhaps I'm wrong here
0
 
LVL 32

Expert Comment

by:jhance
ID: 1177479
thresher...

I agree that your method (i.e. hiding/showing a button) is preferred but it's not what the question asked.  Sometimes you don't know what button you will need until runtime.  An example of this would be a dialog editor type application which cannot use your method.
0
 
LVL 6

Expert Comment

by:thresher_shark
ID: 1177480
That's true, good point.  Thanks for clarifying.
0
 

Author Comment

by:charul
ID: 1177481
Thanks very much. Let me try out the suggestion.
0

Featured Post

Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

Join & Write a Comment

This article will show you some of the more useful Standard Template Library (STL) algorithms through the use of working examples.  You will learn about how these algorithms fit into the STL architecture, how they work with STL containers, and why t…
IntroductionThis article is the second in a three part article series on the Visual Studio 2008 Debugger.  It provides tips in setting and using breakpoints. If not familiar with this debugger, you can find a basic introduction in the EE article loc…
The viewer will learn how to pass data into a function in C++. This is one step further in using functions. Instead of only printing text onto the console, the function will be able to perform calculations with argumentents given by the user.
The viewer will learn additional member functions of the vector class. Specifically, the capacity and swap member functions will be introduced.

757 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

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now