MATLAB:如何使我的函数等待GUI输入

时间:2013-07-20 20:28:04

标签: matlab button user-interface input

我正在尝试为我制作的tic tac toe游戏制作GUI。这是我到目前为止GUI的代码:

function fig=TTTGUI()for 

close all
%initial creation

fig=figure('pos',[100 50 820 640]);
txtbx=uicontrol('style','text','parent',fig,'pos',[640 320 160 300]);
B0=uicontrol('style','pushbutton','parent',fig,'pos',[640 200 40 40],'string',0);
B1=uicontrol('style','pushbutton','parent',fig,'pos',[680 200 40 40],'string',1);
B2=uicontrol('style','pushbutton','parent',fig,'pos',[720 200 40 40],'string',2);
B3=uicontrol('style','pushbutton','parent',fig,'pos',[760 200 40 40],'string',3);

%set number of players
players=[];
set(txtbx,'string','how many players? (1 or 2)');
set(B1,'callback','players=1;');
set(B2,'callback','players=2;');
%stop and wait here

end

我希望我的所有函数在此时停止并等到变量players发生变化,这只会在按下按钮1或2时发生。

我看过'等待','uiwait','暂停'以及其他一些功能,但我找不到我要找的东西。或许我不太明白如何使用这些功能。  如何使我的功能等待按下这两个按钮之一?如果按下另一个按钮,它应该没有效果。

1 个答案:

答案 0 :(得分:2)

尝试使用预定义的问题对话框。有关详细信息,请参阅here

button = questdlg('How many players?', 'One', 'Two' );