在 Matlab GUI 中创建 0-100% 对象

Creating 0-100 percent object in Matlab GUI

我目前正在为我的 Matlab 程序创建一个 GUI(图形用户界面),在其中一个程序中,其中一个参数是整体的百分比。 我想要做的是,创建某种形式的对象,该对象呈现 0-100 之间的数字,用户每次按下箭头按钮时将数字增加 1 或减少 -1。 有没有这样的对象可以帮助我做到这一点?我该如何创建它?

这是您要找的吗:

function test_perc

figh = figure();
% create a text control that will display the 0 - 100 text
texth = uicontrol('Style', 'text', 'Units', 'normalized', ...
    'Position', [0.1, 0.1, 0.8, 0.8], 'FontSize', 56, ...
    'String', '0');
% set a function that handles key presses (uses handle to the text object)
set(figh, 'WindowKeyPressFcn', @(hobj, ev) percfun(ev, texth));

function percfun(ev, texth)
% check if leftarrow or rightarrow has been 
% pressed and modify text accordingly 
if strcmp(ev.Key, 'leftarrow')
    val = max(0, str2num(get(texth, 'String')) - 1);
    set(texth, 'String', num2str(val));
elseif strcmp(ev.Key, 'rightarrow')
    val = min(100, str2num(get(texth, 'String')) + 1);
    set(texth, 'String', num2str(val));
end

上面的代码创建了 figureuicontrol 样式 'text'。然后将图形设置为响应具有特定功能 (percfun) 的按键 (WindowKeyPressFcn),该功能通过设置 uicontrol 的文本来响应箭头。 如果您有任何问题,请提出,我会解释。