Bonjour,
J'ai créé un GUI dans lequel je veux insérer un progress bar qui qui se lance une fois la sortie de mon subsystem simulink se met à 1. Le code est le suivant:
J'ai ajouté les lignes suivantes à la fonction OpeningFcn :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 % --- Executes just before MAJ is made visible. function MAJ_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to GUI_MAJ_Distance_OTA (see VARARGIN) axes(handles.axes1); set(handles.axes1,'Xtick',[],'Ytick',[],'Xlim',[0 1000]); rectangle('Position',[0,0,(round(0))+1,20],'FaceColor','green', 'visible', 'off'); text(480,10,[num2str(0),'%']);
Une fois la sortie 16 se met à 1, la progression doit atteindre 100%
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 function Output_GUI(obj, event, handles) rto1 = get_param('MAJ/X','RuntimeObject'); if((rto1.OutputPort(15).Data == 1) & (rto1.OutputPort(16).Data == 0)) set(handles.axes1, 'visible', 'on'); Max=1000; % Maximum value set(handles.axes1,'Xtick',[],'Ytick',[],'Xlim',[0 1000]); for Index = 0 : Max axes(handles.axes1); cla(handles.axes1); rectangle('Position',[0,0,(round(1000*Index/Max))+1,20],'FaceColor','green'); text(480,10,[num2str(round(100*Index/Max)),'%']); end end
J'ai insérer sur mon IHM un axe comme montré ici:
Le problème c'est que le progress bar s'affiche sur un GUI séparé et la progression est très lente.
Je ne sais pas c'est quoi exactement le problème
Partager