Why does QUESTDLG return the wrong button string if I use the TAB key to switch between different buttons and then hit the Return key using MATLAB 7.3 (R2006b)?

조회 수: 1 (최근 30일)
I would like to use the TAB key to switch between different buttons of a QUESTDLG.
At the moment I am only able to use the mouse to choose between the different buttons but not the TAB key. The buttons do get highlighted in order but when you hit the return key, the default selection is always returned.
For example:
ButtonName = questdlg('What is your favorite color?', ...
'Color Question', ...
'Red', 'Green', 'Blue', 'Green');
switch ButtonName,
case 'Red',
disp('Your favorite color is Red');
case 'Blue',
disp('Your favorite color is Blue.')
case 'Green',
disp('Your favorite color is Green.');
end
After executing the above code, pressing the TAB key causes different buttons to be highlighted but Green is always returned when you hit the return key.

채택된 답변

MathWorks Support Team
MathWorks Support Team 2009년 9월 3일
The ability to use the TAB key to switch between different buttons on a QUESTDLG dialog and activating the button via return key is not available in MATLAB.
To work around this issue you can use the use the TAB key to switch between different buttons on a QUESTDLG dialog and hit the spacebar key to return the correct button string.
  댓글 수: 2
Walter Roberson
Walter Roberson 2015년 8월 2일
Thierry Dalon comments "I would appreciate MathWorks fixing this issue - see my fix proposal in my answer."
Image Analyst
Image Analyst 2020년 11월 17일
This has been fixed at some point. At least it's not a problem in R2020b.
ButtonName = questdlg('What is your favorite color?', ...
'Color Question', 'Red', 'Green', 'Blue', 'Green');
switch ButtonName
case 'Red'
disp('Your favorite color is Red');
case 'Blue'
disp('Your favorite color is Blue.')
case 'Green'
disp('Your favorite color is Green.');
end

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Dialog Boxes에 대해 자세히 알아보기

제품


릴리스

R2006b

Community Treasure Hunt

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

Start Hunting!

Translated by