Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MATLAB如何将菜单移动到屏幕中央_Matlab_User Interface_Positioning - Fatal编程技术网

MATLAB如何将菜单移动到屏幕中央

MATLAB如何将菜单移动到屏幕中央,matlab,user-interface,positioning,Matlab,User Interface,Positioning,我试图在屏幕中央显示一个matlab菜单,所以通常我会这样写 choice=菜单('choose'、'1'、'2') movegui('choice','center') 但是由于matlab在执行第二行之前等待输入,因此它不会移动gui。 我见过一些变通方法,但大多数都很长或很难看。 我该如何解决这个问题 感谢您的帮助。一种可能是将menu.m文件的内容复制到一个新函数中,重命名它并添加以下行: movegui(menuFig,'center'); 第229行。虽然我必须说,这可能是非法的或

我试图在屏幕中央显示一个matlab菜单,所以通常我会这样写
choice=菜单('choose'、'1'、'2')
movegui('choice','center')

但是由于matlab在执行第二行之前等待输入,因此它不会移动gui。
我见过一些变通方法,但大多数都很长或很难看。
我该如何解决这个问题


感谢您的帮助。

一种可能是将menu.m文件的内容复制到一个新函数中,重命名它并添加以下行:

movegui(menuFig,'center');

第229行。虽然我必须说,这可能是非法的或违反服务条款…如果是这样的话,我甚至不确定我应该提出这个建议。无论如何,在命令窗口中键入
edit menu
,可以看到该函数只是创建了一个图形(其句柄为
menuFig
),并添加了按钮的数量以及与您提供的函数输入数量相对应的适当字符串,所以事实上,基于这个想法创建自己的函数并不难。。。祝你好运

谢谢。我认为这样的编程在我的领域是允许的,那么你到底是如何将这一行添加到menu.m的呢?因为menu.m是一个只读文件,所以将整个文件复制/粘贴到一个新函数中,并将代码放在229行上面,紧跟在这段代码之后(第228行):set(menuFig,‘Position’,[winLeftGap bottom winWide winHigh]);这是在所有的组件都创建好之后,让图形可见之前。哈哈,这是一个相当大的解决方案,但公平地说,它将实现我想要看到的,这是真的。。。谢谢你,曼图!既然你在问题中明确指出你看到了长/复杂的东西,我就用了一个简短而甜蜜的变通方法哈哈。干杯