how can I see what has been entered in the GUI1 and / or when I get back from the selected GUI2
显示 更早的评论
Hello, I have the following problem: I created two GUI (GUI1 and GUI2). In the first (GUI1) I have two edit text in which I insert numerical values and two pop-up menus, and a callback function "forward" that brings me to the next GUI (GUI2) that contains two radio buttons, two list-box and two functions callback: a GUI allows you to go to the next (GUI3) the other to return to the previous GUI (GUI1). But when I select the pushbutton 'Back' to return to the gui1, the values in the edit text are not saved as well as the selections made in the pop-up menu. I wanted to know, kindly, how can I see what has been entered in the GUI1 and / or when I get back from the selected GUI2.
I saved the strings in the workspace. How do I set the value stored in the workspace in the function _OpeningFcn? I do not want that when the gui1 is started for the first time creates an error because it does not know the value saved in the workspace. If you start for the first time gui1 creates error?
Thank you for your cooperation.
回答(1 个)
Henric Rydén
2014-5-19
0 个投票
Hi,
If I understand this correctly, in some callback in GUI1, you are calling GUI2 and closing GUI1? You want to pass on parameters from GUI1 to GUI2.
You can transfer the parameters when you call GUI2 (that is, GUI2(x,y,z) ) This will be picked up in the opening function of GUI2 and you can store the values there however you want, i usually put them in the handles structure. Set a debug point in the OpeningFcn of GUI2. To solve the problem when you go back, use nargin or something similar to check if you're going back or starting the first time.
9 个评论
Giuseppe
2014-5-19
Henric Rydén
2014-5-20
If you already have the values, set them in the OpeningFcn of GUI1. Use the set command to set a property.
Giuseppe
2014-5-20
Henric Rydén
2014-5-20
Then you should send the value 5 from GUI1 to GUI2 and store it there. When you go back to GUI1, send it when you call GUI1 from GUI2 and set the property in the opening function of GUI1.
Jacopo
2014-5-20
The problem is I do not know set (do not know how to write) in the OpeningFcn "as property." If "A = 5" in the GUI1. Then I run GUI2. But if I decide to go back (to GUI1) I want to see in my edit text "A = 5". So that, seeing the value of "A = 5", I can change from "A = 5" to "A = 3".
Henric Rydén
2014-5-21
I'm not sure I understand what the issue is. Can't you do something like this in the OpeningFcn?
function GUI1_OpeningFcn(hObject, eventdata, handles, varargin)
if exist('X')
set(handles.edit1,'String',num2str(X));
end
Giuseppe
2014-5-21
Giuseppe
2014-5-21
Henric Rydén
2014-5-22
Let me check your code, I'll write you a pm with my email.
类别
在 帮助中心 和 File Exchange 中查找有关 Entering Commands 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!