edit text, push button and output.

2 次查看(过去 30 天)
Muhammad Taqi
Muhammad Taqi 2012-4-23
Dear All, while working for my university project, am bit stuck in the final steps of GUI. Have compiled a code for Huffman coding. what my requirement is to get input from user which i am able to by creating GUI and placing edit text. Also am able to get entered text.
f unction CODE_Callback(hObject, eventdata, handles)
% hObject handle to CODE (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
data=get(hObject,'String');
% Hints: get(hObject,'String') returns contents of CODE as text
% str2double(get(hObject,'String')) returns contents of CODE as a double
Now i need help to communicate entered text (variable named as "data") with start button to run the complete program. and also to show final output on GUI (text based output)
% --- Executes on button press in START.
function START_Callback(hObject, eventdata, handles)
% hObject handle to START (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
huff (data); % calling main program for huffman coding
-----%%%%%%-----------
disp(strcat('Entropy = ',num2str(entropy)));
disp(strcat('Average length = ',num2str(avglength)));
disp(strcat('Redundancy = ',num2str(redundancy)));
encseq=huffencode(huf,seq);
disp('Sequence :');
disp(seq);
disp('Encoded Sequence :');
disp(encseq);
decseq=huffdecode(huf,encseq);
disp('Decoded Sequence :');
disp(decseq);
(Want to display all output on GUI)
Urgent help will be highly appreciated. Thanks in advance.
  1 个评论
Muhammad Taqi
Muhammad Taqi 2012-4-23
Wholla,,,, I managed to figure out my first query, did managed to make start button work.
Help regarding output is required.
thanks :)

请先登录,再进行评论。

回答(2 个)

Daniel Shub
Daniel Shub 2012-4-23
If you make an additional text box on your gui you can then set the string of that text box to be str where
str = {
strcat('Entropy = ',num2str(entropy))
strcat('Average length = ',num2str(avglength))
strcat('Redundancy = ',num2str(redundancy))
...
}
  7 个评论
Muhammad Taqi
Muhammad Taqi 2012-4-23
So what should i do for the new function to work??
Daniel Shub
Daniel Shub 2012-4-24
You need to read about how to create functions and guis in MATLAB.

请先登录,再进行评论。


Image Analyst
Image Analyst 2012-4-23
Don't use disp() because that outputs to the command window. If you want it to go to your GUI, use set(). Lets say you have a static text control called txtInfo. Then you can use this code:
% Create string for output that we can send to the text control.
txtInfo = sprintf('Entropy = %.4f\nAverage length = %.4f\nRedundancy = %.4f', entropy, avglength, redundancy);
% Now, send the string to the control called txtInfo
set(handles.txtInfo, 'String', txtInfo);
If that is in a tight loop, you might also need to add a "drawnow" to get it to update immediately.
  4 个评论
Muhammad Taqi
Muhammad Taqi 2012-4-24
Well, if i replace disp() with set(), its still giving an error.
??? Undefined variable "handles" or class "handles.txtInfo".
Muhammad Taqi
Muhammad Taqi 2012-4-24
Also, i tried creating an output function as
txtInfo = sprintf('Entropy = %.4f\nAverage length = %.4f\nRedundancy = %.4f', entropy, avglength, redundancy);
then i want to transfer that string to my GUI function for display.
How should i sent there?
Have named my GUI file as TEST2.
function varargout = TEST2(varargin)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Entering Commands 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by