I want to give my participants the option of choosing which block to start with in the trial. I wrote this code: ButtonName = questdlg('Which block do you want to start with?', ... 'Block Type', 'B1','B2','B3','B4')and it returns the following error message, Warning: Default string does not match any button string name.
Please kindly advice. Thanks in advance.

 Accepted Answer

Matt Fig
Matt Fig on 2 Jun 2011

1 vote

The proper use of QUESTDLG is:
ButtonName = questdlg(Question, Title, Btn1, Btn2, Btn3, DEFAULT)
Only (up to) three custom buttons may be specified, followed by the default button. So your code is read as having three buttons and a default named B4, which doesn't match any of the buttons. The last argument is always interpreted as the default button if there are 3 or more arguments.
If you need to have 4 buttons, you will have to make your own GUI, which shouldn't be very difficult...

4 Comments

In 2008b it was still only 2 buttons.
Matt Fig
Matt Fig on 2 Jun 2011
@Walter: I am using 2007b, and this makes 3 buttons, with button 2 as the default:
ButtonName = questdlg('Question','Title','Bt1','Bt2','Bt3','Bt2')
Are you saying in 2008b, this only makes two buttons?
Ah, a disagreement between the help (2 buttons) and the doc (3 buttons)
Is there a way to not have the default button? Just a personal opinion, but the blue around one of the buttons looks bad (it doesn't match my color scheme in the rest of the document). Also, is it possible to change font and/or font color in the pop-up window?

Sign in to comment.

More Answers (0)

Categories

Find more on App Building in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!