0

我写了一个代码,显示一个分为两部分的图形;第一个显示主图像,第二个是显示其余图像的滑块。

现在我需要向主要部分添加文本(如“帮助”或“指南”文本)。我该怎么做?

这是我的主要子代码:

    %# design GUI
    numSubs = 10; % Num of sub-images.
    mx = numImgs-numSubs+1;
    hFig = figure('Menubar','none');

    % The Main Image:
       hAx = axes('Position',[0 0.3 1 0.8], 'Parent',hFig);
hMainImg = imshow(img, 'Parent',hAx);

    % the slider
    hPanel = uipanel('Position',[0 0.04 1 0.26], 'Parent',hFig);
    uicontrol('Style','slider', 'Parent',hFig, ...
        'Callback',@slider_callback, ...
        'Units','normalized', 'Position',[0 0 1 0.04], ...
        'Value',1, 'Min',1, 'Max',mx, 'SliderStep',[1 10]./mx);


    subImg = zeros(numSubs,1);
    for i=1:numSubs
        %# create axis, show frame, hookup click callback
        hAx = axes('Parent',hPanel, ...
            'Position',[(i-1)/numSubs 0 1/numSubs 1]);
        % Load img number i
        name=frames(i).name;
        img=imread(name,'jpg');
        subImg(i) = imshow(img, 'Parent',hAx);
        value = i;
        set(subImg(i), 'ButtonDownFcn',{@click_callback value})
        axis(hAx, 'normal')
        hold off;
    end

有什么建议么?提前致谢。

4

1 回答 1

1

使用这个结构:

hT = uicontrol('style', 'text', 'string', 'HELLO WORLD', 'position', [...])

它将在图中的位置创建静态文本position。您可以将所有常规选项用于uicontrolslike'parent''units'.

但是,由于您的图像位于 中axis,因此更好/更简单的方法是使用

hT = text(X, Y, 'HELLO WORLD')

和坐标X中文本的Y所需坐标。

您可以通过以下方式设置其他选项set

set(hT, 'color', 'r', 'backgroundcolor', 'k', 'fontsize', 10, ...)

You can get a list of all options by issuing set(hT) on a mock text object.

于 2012-09-08T10:54:04.400 回答