我在MATLAB上有一个数字窗口。我希望用户在该图窗口中输入他的答案。我正在使用的代码是:
> prompt = {'Your Age: '}
> dlg_title = 'Bio data'
> answer = inputdlg(prompt,dlg_title)'
这是我得到的数字。
我的问题:
1)如果点击"确定"我在这个对话框中输入的年龄出现在我的图窗口的特定位置。这个对话框的按钮。
2)如何在此对话框中设置自定义背景。
3)如何在没有对话框的情况下在图形窗口上输入用户。如下图所示:(所以答案在水平线上输入,垂直线是光标)
答案 0 :(得分:4)
这可能接近你想要的,
function age = AgeDB()
f = figure;
set(f,'Position',[200 350 350 150],'Color',[.4 .6 .4],'MenuBar','none',...
'Name','Bio data','Visible','off');
bc = [.4 .6 .4];
ht = uicontrol('Style','text','Position',[30 80 160 40],...
'String','Your Age:','FontSize',20,'FontWeight','bold',...
'BackgroundColor',bc,'ForegroundColor','w');
he = uicontrol('style','edit','Position', [200 80 120 40],...
'BackgroundColor',bc,'FontSize',20,'FontWeight','bold',...
'ForegroundColor','w','Callback',{@Age_Callback});
hp = uicontrol('Style', 'pushbutton', 'String', 'Ok',...
'Position', [150 10 50 20],...
'Callback', 'close');
movegui(f,'center')
set(f,'Visible','on')
waitfor(he)
function Age_Callback(hObject,eventdata)
age = str2double(get(hObject,'string'));
end
end