make history
    12 ビュー (過去 30 日間)
  
       古いコメントを表示
    
Hello,
I have 2 popupmenu in my figure. one popupmenu have some strings. I want to make history when i chosen one of them. how i can do it..?? when i chose a string in popupmenu, the last history still there..
thanks.. :)
2 件のコメント
  Jan
      
      
 2012 年 3 月 9 日
				What is "make history"? What is the 2nd popup used for? Which last history is still where?
採用された回答
  Chandra Kurniawan
      
 2012 年 3 月 10 日
        Hi, Rahma
I have seen your picture.
I think I cannot do it with your way.
Imagine if we have A-m-5 in 1st component and we also have c in 2nd component.
The pushbutton cannot decide which one must be stored in history, right?
So, I think we need 2 pushbutton to perform this. One in 1st component and another one in 2nd component.
The figure is shown below :

And the code :
In openingfcn
function untitled_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
handles.cnt = 0;
handles.history = {};
handles.p1str = {'Process1','A','B','C','D','E'};
handles.p2str = {'Process2','m','n'};
handles.p4str = {'Process4','a','b','c'};
set(handles.popupmenu1,'string',handles.p1str);
set(handles.popupmenu2,'string',handles.p2str);
set(handles.popupmenu3,'string',handles.p4str);
set(handles.slider1,'value',0,'sliderstep',[.05 .05]);
guidata(hObject, handles);
In slider1 callback
function slider1_Callback(hObject, eventdata, handles)
val = get(handles.slider1,'value');
val = round(val*20);
set(handles.text5,'string',num2str(val));
In pushbutton1 callback
function pushbutton1_Callback(hObject, eventdata, handles)
p1val = get(handles.popupmenu1,'value');
p2val = get(handles.popupmenu2,'value');
p3val = get(handles.slider1,'value');
p3val = round(20*p3val);
if (p1val > 1) & (p2val > 1)
    handles.cnt = handles.cnt + 1;
    histstr = horzcat(handles.p1str{p1val},', ',...
                                handles.p2str{p2val},', ',...
                                num2str(p3val));
    handles.history{handles.cnt} = histstr;
    set(handles.listbox1,'string',handles.history);
end
guidata(hObject,handles
In pushbutton2 callback
function pushbutton2_Callback(hObject, eventdata, handles)
p4val = get(handles.popupmenu3,'value');
if p4val > 1
    handles.cnt = handles.cnt + 1;
    histstr = handles.p4str{p4val};
    handles.history{handles.cnt} = histstr;
    set(handles.listbox1,'string',handles.history);
end
guidata(hObject,handles);
You can also download the file and do modification on it for your purpose.
I hope this works!
6 件のコメント
その他の回答 (0 件)
参考
カテゴリ
				Help Center および File Exchange で Entering Commands についてさらに検索
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


