2009-07-12 12 views
8

मुझे अपनी परियोजना के लिए MATLAB में एक GUI बनाने की आवश्यकता है। मैंने जीयूआई प्रोग्राम करने के उदाहरणों के लिए हर जगह देखा लेकिन मुझे बहुत कुछ नहीं मिला। MATLAB में जीयूआई प्रोग्रामिंग के लिए कुछ अच्छी साइटें या तकनीक क्या हैं?मैं MATLAB में एक जीयूआई कैसे प्रोग्राम कर सकता हूं?

उत्तर

2

मैं हाल ही में एक सरल GUI है कि कुछ भूखंडों को नियंत्रित करता है कार्यक्रम के लिए किया था कि मैं MATLAB GUIs बनाने के बारे में बना दिया है। मुझे नहीं पता कि आपका काम क्या है, लेकिन शुरू करने के लिए यहां कुछ बुनियादी कोड है। यह दो आंकड़े बनाता है; चित्रा 1 में नियंत्रण है, चित्रा 2 में y = x^p का साजिश है। आप बॉक्स में पी के मान दर्ज करते हैं और इसे पंजीकृत करने के लिए एंटर दबाते हैं और दोहराते हैं; फिर डिफ़ॉल्ट पी = 1 पर रीसेट करने के लिए बटन दबाएं।

function SampleGUI() 
    x=linspace(-2,2,100); 
    power=1; 
    y=x.^power; 
    ctrl_fh = figure; % controls figure handle 
    plot_fh = figure; % plot figure handle 
    plot(x,y); 
    % uicontrol handles: 
    hPwr = uicontrol('Style','edit','Parent',... 
         ctrl_fh,... 
         'Position',[45 100 100 20],... 
         'String',num2str(power),... 
         'CallBack',@pwrHandler); 

    hButton = uicontrol('Style','pushbutton','Parent',ctrl_fh,... 
         'Position',[45 150 100 20],... 
         'String','Reset','Callback',@reset); 

    function reset(source,event,handles,varargin) % boilerplate argument string 
     fprintf('resetting...\n'); 
     power=1; 
     set(hPwr,'String',num2str(power)); 
     y=x.^power; 
     compute_and_draw_plot(); 
    end 

    function pwrHandler(source,event,handles,varargin) 
     power=str2num(get(hPwr,'string')); 
     fprintf('Setting power to %s\n',get(hPwr,'string')); 
     compute_and_draw_plot(); 
    end 

    function compute_and_draw_plot() 
     y=x.^power; 
     figure(plot_fh); plot(x,y); 
    end 
end 

GUIs के पीछे मूल विचार है कि जब आप नियंत्रण में हेरफेर वे कहते हैं "कॉलबैक" काम करता है, अर्थात ईवेंट हैंडलर्स है; ये फ़ंक्शंस नियंत्रण हैंडल का उपयोग करके नियंत्रणों के माध्यम से बातचीत करने में सक्षम होते हैं और अपनी गुणों को प्राप्त करने या बदलने के तरीकों को सेट/प्राप्त करते हैं।

उपलब्ध गुणों की सूची प्राप्त करने के लिए, मैटलैब की प्रलेखन वेबसाइट (http://www.mathworks.com/access/helpdesk/help/techdoc/infotool/hgprop/doc_frame.html) पर बहुत ही जानकारीपूर्ण हैंडल ग्राफिक्स प्रॉपर्टी ब्राउज़र पर विचार करें; यूआई ऑब्जेक्ट्स पर क्लिक करें (या जो भी आपको चाहिए)।

आशा है कि इससे मदद मिलती है!