GUI没有“关闭”和“最小化”按钮

40次观看(过去30天)
Mehdi.
Mehdi. 2014年5月12日
在计算期间,我已经制作了一个GUI,它在计算期间显示“请等待...”,因此不应关闭或最小化。如何消除整个栏以防止不需要的闭合或动作?先感谢您。P.S.我确实下载Windowapi,但它不起作用,或者我不知道要正确运行它。一点帮助会很棒。

答案(3)

Sampath Rachumallu.
Sampath Rachumallu. 2020年5月11日
您可以查看以下链接。
通过将Uifigure的“Windowstate”属性设置为“全屏”,可以隐藏“最小化”和“关闭”按钮。这是代码
f = Uifigure('windowstate''全屏');
但是,当按下'ESC'键时,它将达到正常的窗口大小,拥有所有“最小化”,“关闭”按钮等

弗里德里希
弗里德里希 2014年5月12日
编辑:弗里德里希 2014年5月19日
你好,
至少在Windows AFAIK上没有关闭按钮,只有禁用窗口的完整标题,这也不会最小化和最大化按钮。但是,不可能最小化按钮,但您必须留在关闭按钮。所有这些都可以使用Windows API和 setwindowlong. 在MEX功能内的功能。
它可以更轻松地实现自己的ClosErequestFCN,以防止关闭该数字,只需长时间计算运行。但是,在Matlab中无法获得最小化按钮无法做任何事情。
更新
使用小mex(mymex.c):
包括“mex.h”
包括“windows.h”
空白MexFunction(int nlhs,mxarray * plhs [],int nrhs,const mxarray * prhs [])
{
如果(nrhs == 1)
{
long value = getWindowlong(*(hwnd *)mxgetdata(prhs [0]),gwl_style);
PLHS [0] = mxcreatelogicalScalar(SetWindowlong(*(hwnd *)mxgetdata(prhs [0]),gwl_style,(int)(value&〜ws_caption))> 0);
}
}
并从matlab致电
情节(1:10);
暂停(1);
JFrame = GET(句柄(GCF),'javaframe');
hwnd = int32(jframe.fhg1client.getwindow.gethwnd);
MyMex(HWND)

Mehdi.
Mehdi. 2014年5月19日
喂弗里德里奇,谢谢你的回复。我的系统是Windows 8.1。我确实想要一个简单的GUI,没有“关闭”,'最小化或最大化'按钮。我尝试了以下代码并将其放在outputfcn中,但没有发生任何事情:handles.output = fhjine;Guips = get(freming,'位置');windowapi(疯狂,'位置',guips);Windowapi(fremject,'clip');
这个问题周围有什么工作吗?你的方法是什么?先感谢您。
1条评论
1月
1月 于2016年2月17日
当GUI函数回复输出到调用函数时,调用OutputFCN。更好地将此插入CreateFcn中。

登录评论。

下载188bet金宝搏

社区宝藏狩猎

找到Matlab Central中的宝藏,并发现社区如何帮助您!

开始狩猎!