2017-03-16 47 views
0

我有一個GUI(GUI1)與按鈕(Btn1)。當我點擊Btn1時,第二個帶有繪圖(GUI2)的窗口呈現,GUI1變爲非活動狀態(GUI2.fig和GUI.m保存到磁盤)。如何使這兩個窗口活動?Matlab - 兩個活動GUI

我tride這樣的事情,但它沒有工作:

InterfaceObj=findobj(fig,'Enable','on'); % fig = gcf; 
set(InterfaceObj,'Enable','on'); 

GUI2如下調用:

h = GUI2; 

感謝您的答案!

我的代碼: 功能visual_Callback(hObject,EVENTDATA,處理)%BTN1 %hObject處理視覺(見GCBO) %EVENTDATA保留 - 在MATLAB %以後的版本中定義的手柄和手柄結構用戶數據(參見GUIDATA)

PDB_=getappdata(gcf,'PDB_'); 
file_=getappdata(gcf,'file_'); 
set(handles.PDB_list,'String', PDB_); 
SelectedItem = get(handles.PDB_list,'Value'); 
setappdata(gcf,'SelectedItem',SelectedItem); 

fig = gcf; 


h = GUI2; % GUI2.fig and .m file 

visual(file_(SelectedItem,:)); %visual() is the function that generates my graph 

InterfaceObj=findobj(fig,'Enable','on'); 
set(InterfaceObj,'Enable','on'); 


end 
+1

你是什麼意思「主動」?這是您的操作系統的一個限制,因此兩個窗口不能一次成爲活動窗口。 – Suever

+0

當我嘗試點擊GUI1時,它被阻止。有一些方法可以繞過Windows 8的限制嗎? – destrudos

+0

你是什麼意思,它是「封鎖」?任何圖形更新仍應該發生,您仍然可以點擊它來重新對焦。 – Suever

回答

0

我已經完成了! 我把:

h = GUI2; 

在函數內部:

mainWindow_OpeningFcn(hObject, eventdata, handles, varargin) 
... 
guidata(hObject, handles); 
h = GUI2; 
end 

這初始化GUI2與GUI1啓動。 非常感謝!