Моя идея - создать логотип (похожий на стартап Matlab), который будет отображаться до появления моего графического интерфейса.У меня есть следующий код (он был получен при изменении решения, заданного Как мне создать заставку для моего приложения MATLAB GUI? ) для него:
% create a figure1 that is not visible yet, and has minimal titlebar properties
fh = figure('Visible','off','MenuBar','none','NumberTitle','off',...
'DockControls','off');
% put an axes in it
ah = axes('Parent',fh,'Visible','on');
% put the image in it
ih = imshow('SIS.gif','Parent',ah);
% set the figure1 size to be just big enough for the image, and centered at
% the center of the screen
imxpos = get(ih,'XData');
imypos = get(ih,'YData');
set(ah,'Unit','Normalized','Position',[0,0,1,1]);
figpos = get(fh,'Position');
figpos(3:4) = [imxpos(2) imypos(2)];
set(fh,'Position',figpos);
movegui(fh,'center')
% make the figure1 visible
set(fh,'Visible','on');
pause(3);
close(fh);
У меня две проблемы:
Номер 1: Я хочу, чтобы у окон рисунка логотипа не было границ, заголовка и панелей задач.Я попробовал WindowAPI, но он не работает, потому что я вызываю его после вышеприведенного кода, и из-за того, что окно отключено, дескриптор тоже отключен.
Номер 2: я хочу, чтобы, когда изображение логотипа исчезло, оно показывало окно графического максимизированного окна.В чем проблема?Переход экрана между окном логотипа и окном графического интерфейса не сглаживается.Я пытался использовать множество приложений Matlab, которые я нашел в Файловом обмене Matlab Central (WindowAPI, Maxfig, Maximize, SetFigTransparency, ...), но безуспешно.Я понял, что проблема заключается в видимости моего графического интерфейса (я запускаю до тех пор, пока не будут созданы все элементы, а затем я включаю его).Из-за выключенной видимости, из-за которой отключена возможность просмотра, предыдущие приложения не влияют на окно рисунка, которое я хочу максимизировать.
После наблюдения за запуском Matlab у менязаметил, что после показа логотипа появляется полноэкранное изображение, за которым следует обычный полноэкранный режим программы.Поэтому я попытался создать максимально полноэкранные окна, которые появляются после закрытия окон логотипа.Однако теперь проблема заключается в переходе между этим последним и графическим окном.Если я включу видимость окна графического интерфейса, а затем разверну его, то через мгновение можно будет увидеть тот переход, который меня беспокоит.Я не знаю, что делать.Я также думаю, что, если бы я мог избежать того, чтобы окно справочника было текущим, когда я изменил его видимость, возможно, я бы достиг этого.Другим решением может быть таймер, который удерживает белое окно в качестве currentfigure, в то время как направляющее окно находится за изменением его видимости, но я не знаю, как это сделать.Спасибо за Ваше внимание.Приветствия.