簡體   English   中英

Matlab:如何從set()中的函數返回輸出?

[英]Matlab: How to return output from a function in a set()?

我現在正在使用Matlab GUI ,在從由set()設置的函數訪問返回值時遇到問題。

情況:
我將windowMotionFcn設置如下:

set(gcf,'WindowButtonMotionFcn',@test);

函數'test'可以返回2個變量(分別命名為var1和var2)。但是我不知道如何存儲它們...
我已經在互聯網上搜索,找不到任何方法。

我應該怎么寫?

感謝您的幫助和關注。

我認為您想要做的是從回調函數返回一個值。 關於從回調返回值,我不確定這是可能的。 我從matlab新聞閱讀器中找到了一篇舊文章。 我認為您的問題可能相似。

但是,如果您有Matlab GUIDE GUI,則有一種方法可以從gui返回值。 matlab中心的matlab教程中對此進行了描述:Advanced-getting-an-output-from-a-guide-gui 您必須做的是修改CloseRequestFcnOutputFcn

另一種可行的方法是使用全局變量。 全局變量存在於全局工作區中。 這意味着它可以被Matlab中的每個函數查看和訪問。 在大多數情況下,不建議使用全局變量,但是如果沒有其他解決方案,則可能有必要。 只需確保對其進行記錄,以便下一個接管您的代碼的人知道他們在那里。 另外,請確保為全局變量選擇一個好名字,例如gblMyVar這樣就不會混淆變量是全局變量了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM