1

我需要为具有以下要求的特定代码制作 GUI:

1.它应该从目录中选择一个文本文件(浏览按钮)。
2.我们必须在文本框中输入一个数据(并且应该在它旁边写一个静态的这个文本:(输入(从上面的上下文数组)用逗号分隔的查询GO术语:)。 3.
我应该按下按钮 Find the RKC.
4. RKC(s) 应该在 GUI 上显示为结果(在普通的 matlab 代码中,结果是 fprintf('RKC = { %s , %s }\n',pc, cc); 其中 pc 和 cc 是代码的结果。

我确实创建了自己的 GUI 代码,但存在一些问题:

1.在函数'RKCCallback'中,它不会从它上面的'GOCallback'函数中获取选定的文本文件。
2. 我不知道如何在浏览按钮旁边创建静态文本框,我应该在上面写:(输入(从上面的上下文数组)查询 GO 用逗号分隔的术语:)。
3.我不知道如何制作一个输入框,我应该输入要运行的数据并找到RKC(在正常的matlab代码中它是:n = input('输入(来自上面的上下文数组)查询用逗号分隔的 GO 术语:','s'); 。

The GUI code:

function My_GUI
    clear all
    close all
    clc


plotbutton=uicontrol('Style','pushbutton',...
    'Position',[400 300 100 30],...
    'String','Browse',...
    'Callback',@GoCallback);

function GoCallback(source,eventdata)

        [FileName,PathName]= uigetfile('*.txt','Browse')


 end

%set push button for parameter A
RKCbutton=uicontrol('Style','pushbutton',...
    'Position',[400 100 100 30],...
    'String','Find the RKC',...
    'Callback',@RKCCallback);

%Set main figure properties.
bgcolor=[0.8 0.8 0.8];
frac2main=figure('Visible','off',...
    'Position',[0 0 700 480],...
    'MenuBar','none',...
    'Name','Melanoma Detection',...
    'NumberTitle','off',...
    'Resize','off',...
    'Color',bgcolor);
'*.txt','Browse'
%set textRKC for result
textRKC=uicontrol('Parent', frac2main,...
    'Style','text',...
    'Position',[220 300 100 30],...
    'String','0',... 
    'FontWeight','demi',...
    'FontSize',11,...
    'Backgroundcolor',[1 1 1],...
    'Foregroundcolor',[0 0 1]);

function RKCCallback(source,eventdata)
          s={};
           fid = fopen('gos.txt'); 
    tline = fgetl(fid); 
        while ischar(tline) 
           s=[s;tline]; 
           tline = fgetl(fid); 
        end 

The rest of the code....
.
.
.
.
.
.


   set(textRKC,'string',pc,cc)  % the results which should shown
end

fowlloing 是我希望我的 GUI 出现的图片(也应该有结果框,但我不知道如何在底部绘制它)

在此处输入图像描述

谢谢

4

1 回答 1

2

我建议您阅读有关MATLAB 文件交换的超级帖子。这将帮助您深入了解这些 GUI 背后的机制。

于 2012-12-21T12:39:58.813 回答