2016-05-23 26 views
1

私はMATLAB実行可能アプリケーションを作成しています。また、MATLABで実行可能ファイルを作成するときに、スプラッシュ画面を追加するオプションが用意されています。私は通常の画像、png、jpgでこれを試しました。しかし、私はアニメーション画像を使用したいと思っていました。私のプログラムはコンパイルと実行に時間がかかりますので、ロード中であることをユーザーに知らせて、終了しないようにします。私はスプラッシュスクリーンにgifイメージを追加しようとしましたが、うまくいきませんでした。ちょうど静止画が表示されました。実行可能なMATLABアプリケーションにアニメーションスプラッシュスクリーンまたはgifを追加する方法はありますか?gifを使用したMATLABアニメーションスプラッシュ画面

答えて

0

私はできないと思います。しかし、あなたができることは、ウィンドウにGIFを表示し、各フレームをx秒ごとに更新することです。ここでは例として、その後

% Read in your GIF file. Don't forget to read in the colour map as it is 
% required for display. 
[I, map]=imread('http://i.imgur.com/K9CLvNm.gif','Frames','all'); 

% Create a figure to hold your splashscreen 
hfig=figure; 
set(hfig,'Menubar', 'none'); 
set(hfig,'name','Please wait. Loading...','numbertitle','off'); 

% Set a timer to dynamically update the plot every 0.1 sec 
t=timer('TimerFcn', {@timerCallbackFcn, hfig, I, map},'ExecutionMode','FixedRate','Period',0.1); 

% Start the timer 
start(t); 

% Do your stuff here 
for j=1:10 
    pause(1); 
end 

% Clean-up 
stop(t); 
delete(t); 
delete(hfig); 

とtimerCallbackFcn.m

% This is the timer function to update the figure. 
% Save as timerCallbackFcn.m 
function timerCallbackFcn(hTimer, eventData, hfig, I, map) 
    figure(hfig); 

    % i is the frame index 
    persistent i;  
    if isempty(i), i=1; end 

    % display the i-th frame in the GIF 
    imshow(I(:,:,i),map);  

    % increment frame index i 
    i=i+1; 
    numframes=size(I,4); 
    if (i>numframes), i=1; end 
end 
+0

恐ろしいというファイルにタイマ更新機能を作成するのです。ありがとう – CyborgOverStack

関連する問題