Разработка графического пользовательского интерфейса в среде MATLAB. Бадриев И.Б - 64 стр.

UptoLike

64                                Èíòåðôåéñ â ñðåäå MATLAB

5      Îáìåí äàííûìè ìåæäó ïîäôóíêöèÿìè îáðàáîòêè
      ñîáûòèé


     Íåîáõîäèìîñòü îáìåíà äàííûìè ìåæäó ïîäôóíêöèÿìè îá-
ðàáîòêè ñîáûòèé âîçíèêàåò î÷åíü ÷àñòî ïðè ïðîãðàììèðî-
âàíèè ïðèëîæåíèé ñ ãðàôè÷åñêèì èíòåðôåéñîì. Ýòîò îáìåí
ìîæíî îñóùåñòâëÿòü äâóìÿ ñïîñîáàìè. Ïåðâûé ñïîñîá ñîñòîèò
â ñëåäóþùåì: äàííûå, êîòîðûå òðåáóåòñÿ ñîõðàíèòü ïðè âû-
ïîëíåíèè íåêîòîðîé ïîäôóíêöèè, çàïèñûâàþòñÿ â ïîëÿ ñòðóê-
òóðû handles; ïðè ýòîì æåëàòåëüíî ñîçäàòü íîâîå ïîëå è óæå
â íåãî ñîõðàíèòü äàííûå. Çàòåì â ýòîé æå ïîäôóíêöèè ñòðóê-
òóðà handles ñîõðàíÿåòñÿ ïðè ïîìîùè ôóíêöèè guidata. Ôóíê-
öèÿ guidata ðàáîòàåò ñëåäóþùèì îáðàçîì:
     ôóíêöèÿ guidata(object_handle, handles) ñîõðàíÿåò â ñòðóê-
òóðó handles äàííûå ïðèëîæåíèÿ, ãäå ïåðâûé âõîäíîé àðãó-
ìåíò object_handle äîëæåí áûòü óêàçàòåëåì íà îêíî ïðèëî-
æåíèÿ èëè îäíîãî èç åãî ïîòîìêîâ;
     Êîìàíäà handles = guidata(object_handle) çàïèñûâàåò â
handles ñòðóêòóðó ñ äàííûìè ïðèëîæåíèÿ, âõîäíîé àðãóìåíò
object_handle òàêæå äîëæåí áûòü óêàçàòåëåì íà îêíî ïðèëî-
æåíèÿ èëè îäíîãî èç åãî ïîòîìêîâ;
     Ïîýòîìó â ïîäôóíêöèÿõ îáðàáîòêè ñîáûòèé ýëåìåíòîâ óï-
ðàâëåíèÿ ìû áóäåì ïèñàòü