How do I programmatically set the size of the the web browser window that is created with the MATLAB web command " web " ?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Christopher Stokely
el 22 de En. de 2019
Comentada: Jitender Gangwar
el 27 de Nov. de 2020
I would like to use MATLAB's built-in web capabiliies to open a web page and place it on my screen in a specific location.
For example, when I enter the command:
[h1,h2,h3]=web('http://news.google.com','-notoolbar','-new'); % open a web page
I am able to determine the location of the web page on my screen:
webPageScreenInfo = ([h2.getLocationOnScreen.x, ...
h2.getLocationOnScreen.y, ...
h2.getSize.width, ...
h2.getSize.height]);
I have only been able to get the location but not to set the location.
And my available screen size is given by:
availableScreenSize = get( groot, 'Screensize' ); % determine size of my screen
I have played with some undocumented stuff in MATLAB by exploring these commands and a few others:
methodsview('com.mathworks.mde.webbrowser.WebBrowser')
com.mathworks.mlservices.MatlabDesktopServices.getDesktop.closeGroup('Web Browser')
I am lost on how to proceed. Please help!
0 comentarios
Respuesta aceptada
Yair Altman
el 23 de En. de 2019
Editada: Yair Altman
el 24 de En. de 2019
Note: undocumented/unsupported:
[h1,h2,h3] = web('http://news.google.com','-notoolbar','-new'); % open a web page
drawnow; pause(0.05);
jWindow = h2.getTopLevelAncestor;
jWindow.setSize(java.awt.Dimension(800,400)); % width,height
jWindow.setLocation(java.awt.Point(300,500)); % x,y
Note that the x,y location is the pixel-position of the window's top-left corner, downward & rightward of the top-left monitor corner (unlike Matlab which measures upward from bottom-left, Java measures downward from top-left).
Yair Altman
3 comentarios
Yair Altman
el 24 de En. de 2019
You need to let the new window fully render before retrieving its window handle. You do this with a drawnow and/or pause command. I edited my answer above to reflect this. You can modify the pause duration [or perhaps even eliminate the pause altogether) to suit your specific platform.
Yair Altman
Más respuestas (0)
Ver también
Categorías
Más información sobre Environment and Settings en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!