Как максимизировать рисунок / окно MATLAB GUI при запуске?
В настоящее время я оцениваю GUI в MATLAB, и мне было интересно, как максимально увеличить окно GUI при запуске без необходимости взаимодействия с пользователем. Функция, которую я использую, описана ниже и прекрасно работает, если она вызывается нажатием кнопки, но вызов ее в Открытие Fcn фигуры не поможет.
http://www.mathworks.com/matlabcentral/fileexchange/25471-maximize
Любая помощь в каком-либо разделе запуска для размещения вызова функции, которая выполняется после того, как окно GUI было нарисовано? Я искал решения, связанные с кодом запуска, в MATLAB GUI, но результатов пока нет. Заранее спасибо за ваши усилия.
1 ответ
Поскольку многие люди заинтересованы в этом, и публичного решения пока нет, я опишу свой подход:
в
YourGUIName_OpeningFcn(hObject, eventdata, handles, varargin)
добавьте следующие строки:% Initialize a timer, which executes its callback once after one second timer1 = timer('Period', 1, 'TasksToExecute', 1, ... 'ExecutionMode', 'fixedRate', ... 'StartDelay', 1); % Set the callback function and declare GUI handle as parameter timer1.TimerFcn = {@timer1_Callback, findobj('name', 'YourGUIName')}; timer1.StopFcn = @timer1_StopFcn; start(timer1);
Объявить
timer1_Callback
а такжеtimer1_StopFcn
функции:%% timer1_Callback % --- Executes after each timer event of timer1. function timer1_Callback(obj, eventdata, handle) % Maximize the GUI window maximize(handle); %% timer1_StopFcn % --- Executes after timer stop event of timer1. function timer1_StopFcn(obj, eventdata) % Delete the timer object delete(obj);
Объявить
maximize
функция:function maximize(hFig) %MAXIMIZE: function which maximizes the figure withe the input handle % Through integrated Java functionality, the input figure gets maximized % depending on the current screen size. if nargin < 1 hFig = gcf; % default: current figure end drawnow % required to avoid Java errors jFig = get(handle(hFig), 'JavaFrame'); jFig.setMaximized(true); end
Источник maximize
функция:
http://www.mathworks.com/matlabcentral/fileexchange/25471-maximize