Creating Menus using GUIDE

I've created a GUI, and I want to create a Help menu that, when activated, brings up a new window that has static text. However, I'm not sure how to do this using GUIDE. Do I just create new figures and call them from the GUI?

 Accepted Answer

You can make use of the message box utility:
msgbox('your message here');
Insert you help message and link the msgbox function to the pushbutton ( or whatever you want ) of your GUI.
help msgbox
will give you more options

7 Comments

helpdlg('helpstring')
will do as well.
I'm wanting to put more in the Help menu than just a few lines of text, so I'm thinking the msgbox() function will be tougher to program.
The default msgbox and helpdlg functions can handle a lot of text:
x = ['hello world '];
helpdlg(repmat(x,1,200))
The only problem is that the window width is fixed.
If you really need to make your own, then, yes, make a figure window and fill it with your text:
h = figure('MenuBar','none')
uicontrol(h,'style','text','units','normalized',...
'position',[0,0,1,1],'string',repmat(x,1,200))
the msgbox ( helpdlg ) can be as long as you want. I've done it with a text of around 700 words.
str1='Help! is the fifth British and tenth North American album by the Beatles, and the soundtrack from their film Help!. Produced by George Martin for EMI''s Parlophone Records, it contains fourteen songs in its original British form, of which seven appeared in the film. These songs took up the first side of the vinyl album and included the singles "Help!" and "Ticket to Ride". The second side contained seven other releases including the most-covered song ever written,';
str2='The American release was a true soundtrack album, mixing the first seven songs with orchestral material from the film. Of the other seven songs that were on the British release, two were released on the US version of the next Beatles album, Rubber Soul, two were back-to-back on the next US single and then appeared on Yesterday and Today, and three had already been on Beatles VI.';
str3='In 2012, Help! was voted 331st on Rolling Stone magazine''s list of the "500 Greatest Albums of All Time';
help_str = strcat(str1,str2,str3);
msgbox(help_str)
How do I program line breaks?
Easiest way, I think, is to use the magic character #10 :)
Using the three strings from David's example:
help_str = [str1,10,10,str2,10,str3];
msgbox(help_str)
Fantastic! Works like a charm.

Sign in to comment.

More Answers (0)

Categories

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!