我如何使一个图形全屏编程在MATLAB?

4240次浏览(过去30天)
我想制作我的数字“全屏”而不使用鼠标来最大化图形窗口。

接受的答案

MathWorks支金宝app持团队
编辑:MathWorks支金宝app持团队 2020年12月2日
从MATLAB R2018a开始,您可以使用WindowState属性来最大化,最小化,或在全屏模式下显示图形。
要使图形与之前版本中的屏幕大小相同,可以使用以下命令:
数字('单位''标准化'“outerposition”,[0 0 1 1])
还请参阅下面的相关解决方案,以获得通过编程最大化、最小化和恢复图形窗口的方法。
4评论
MathWorks支金宝app持团队
MathWorks支金宝app持团队 在11月4日2020年11月4日
从Matlab R2018A开始 ,您可以使用“windowstate”属性来最大化,最小化或在全屏模式下显示图形。有关更多信息,请参阅以下文档:

登录评论。

更多的答案(9)

Antonio JavierBarragánPiña
set(gcf, 'Position', get(0, 'Screensize'));
5个评论
沃尔特罗伯森
沃尔特罗伯森 于1月16日2020年
您可以将它放在代码中希望将图形强制全屏显示的位置。
如果您想为指南GUI进行这样做,那么您可以将其放在* OpenFcn回调码中。

登录评论。


Bogdan Dzyubak.
Bogdan Dzyubak. 2016年8月16日
编辑:MathWorks支金宝app持团队 2021年6月24日
提出的方法是简单的,但使图形“几乎”全屏,这可能导致您关闭最大化Matlab会话而不是图形。
为了实际最大化,你可以使用以下方法:
数字;
暂停(0.00001);
frame_h = get(句柄(gcf),'javaframe');
集(frame_h,'最大化',1);
9日评论
gaoyi郭
gaoyi郭 2020年10月23日
这可能是最好的解决方案,数字窗口被最大化到真实的屏幕大小!

登录评论。


杜米尼克Mattioli
杜米尼克Mattioli 2019年6月20日
编辑:杜米尼克Mattioli 2019年6月20日
如果你想解释任务栏(我在其他问题的评论中找到的):
fh =图();
窗口状态=“最大化”;
7评论

登录评论。



1月
1月 2018年2月26日
在Windows下,您可以使用操作系统的API,参见 //www.tatmou.com/matlabcentral/fileexchange/31437-windowapi.
figh =数字;
WindowAPI (FigH“满”);%填充当前监视器
WindowAPI (FigH‘工作’);如果有一个,%没有任务栏的当前监视器
没有窗户边界,只是内部位置。

WCJHunter
WCJHunter 2019年1月27日
正如史蒂芬·洛德所说:
Set(GCF,'Windowstate','fullscreen')

马丁莱科
马丁莱科 2019年3月21日
编辑:马丁莱科 2019年3月21日
要在MATLAB中打开全屏数据窗口,请使用图表命令的“位置”选项。有两种方式:
  1. 获取屏幕大小并将其提供给figure:
s = get(0, '屏幕大小');
图('Position', [0 0 s(3) s(4)]);
2.无需费力获取屏幕大小,使用标准化单位:
图(‘单位’、‘标准化’、‘位置’、[0 0 1])
1条评论
沃尔特罗伯森
沃尔特罗伯森 2019年3月21日
这将为您提供“除标题栏或底座或底部栏之外的全屏”。您需要其他全屏的其他技术。

登录评论。


DGM.
DGM. 2020年12月31日
与Jan的答案类似,可以使用系统级工具来最大化Linux中的Windows。这样,行为应该是版本 - 不可否认的,如果您只单击窗口手动最大化按钮,将窗口调整到您期望的几何图形。
要在外部识别窗口,只需给出数字窗口一个明确的标题。然后,您只需使用WMCTRL来获取窗口“,然后最大化窗口。
窗口名='autoplotter';
集(myfigurehandle,“numbertitle”“关闭”“姓名”,风敦名称)
暂停(1)等待窗口管理器
系统(sprintf ('winid=$(wmctrl -lx | grep "%s" | cut -d \\ -f 1 | tail -n 1);WMCTRL -ir "$winid" -b add,maximized_vert,maximized_horz'windowname))
5个评论
rik.
rik. 2021年1月3日
有很多提交的声音听起来像他们已经实施了一些革命性的想法,一切都在简单地设置 位置 到了 屏幕尺寸 。看着1月份提交的评论我看不到任何人抱怨它只适用于Windows。只要您的描述清楚地说明了这一要求,我就不会明白为什么它不应该得到FEX页面。这里的潜在用户将找到它的可能性要小得多。
你是否有一种编程方式来检查wmctrl是否按预期工作?如果是这样,您甚至可以实现一个检查(连同 isunix&& ~ ismac ),并发出错误。依我拙见,你不应该担心那些连你描述的前两行都懒得读的人。
如果我决定实现这一点,我将在代码的评论中提出到此答案的链接。如果您确实决定将此发布到FEX,我可以赢得FEX条目。

登录评论。


Ahmadreza Keihani
Ahmadreza Keihani 2021年5月27日
H = GCF;%或H = GCA
H.Windowstate ='最大化' ;
SaveAs(GCF,filename,'jpg')%或savefig(文件名)
3评论
rik.
rik. 2021年5月27日
我承认史蒂文的答案不如你的直接,但是 答案是完全相同的事情。它甚至还使用单独存储的手柄。我真的不明白为什么要使用 gcf 需要一个新的答案。
我也不知道是什么 saveas 与这个问题有关。我同意这是一个有用的功能,但是有些重要的和有用的功能的人可能不知道。我认为这些像素应该保持专注,只为手头的问题提供解决方案,留下其他线程处理如何将图形保存到图像文件的问题。金宝搏官方网站

登录评论。

下载188bet金宝搏

社区寻宝

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

开始打猎吧!