MATLAB SIMULINK 7 - GRAPHICAL USER INTERFACE Uživatelský manuál Strana 431

  • Stažení
  • Přidat do mých příruček
  • Tisk
  • Strana
    / 500
  • Tabulka s obsahem
  • KNIHY
  • Hodnocené. / 5. Na základě hodnocení zákazníků
Zobrazit stránku 430
Share Data Among Callbacks
12-3
Method Description Requirements and Trade-Offs
UIs)” on page
12-5
Can share multiple variables.
“Store Data
Using the
guidata
Function” on
page 12-6
Share data with the figure window
using the guidata function.
Stores or retrieves the data
through any UI component.
Stores only one variable at
a time, but you can store
multiple values as a struct
array or cell array.
Store Data in UserData or Other Object Properties
UI components contain useful information in their properties, which you can access
directly as long as you have access to the component. If you do not have access to the
component, then use the findobj function to search for the component that has a known
property value. You can store any data in the UserData property of a UI component or
figure. For example, the following programmatic UI code uses the UserData property to
share information about the slider. To see how it works, copy and paste this code into an
editor and run it.
function my_slider()
hfig = figure();
slider = uicontrol('Parent', hfig,'Style','slider',...
'Units','normalized',...
'Position',[0.3 0.5 0.4 0.1],...
'Tag','slider1',...
'UserData',struct('val',0,'diffMax',1),...
'Callback',@slider_callback);
button = uicontrol('Parent', hfig,'Style','pushbutton',...
'Units','normalized',...
'Position',[0.4 0.3 0.2 0.1],...
'String','Display Difference',...
'Callback',@button_callback);
end
function slider_callback(hObject,eventdata)
sval = hObject.Value;
diffMax = hObject.Max - sval;
data = struct('val',sval,'diffMax',diffMax);
hObject.UserData = data;
Zobrazit stránku 430
1 2 ... 426 427 428 429 430 431 432 433 434 435 436 ... 499 500

Komentáře k této Příručce

Žádné komentáře