2012-09-08 50 views
0

我寫了一個代碼,顯示一個數字分爲2部分; 第一個顯示主圖像,第二個是顯示其餘圖像的滑塊。添加文字到一個數字 - MATLAB

現在我需要添加文本的主要部分(如「幫助」或「指南」文本)。 我該怎麼辦?

這是我的主要子代碼:

%# 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 

有什麼建議? 在此先感謝。

回答

1

使用這種結構:

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

它將在position位置創建圖靜態文本。您可以使用uicontrols的所有常規選項,如'parent''units'

然而,由於你的形象是在axis,更好/更簡單的方法來做到這一點是使用

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

與軸文本XY所需的座標。

您可以通過set設置附加選項:

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

您可以通過一個模擬text對象發行set(hT)得到所有選項的列表。

+0

@Rode Oldenhuis:我嘗試了兩個,第一個沒有工作。如果我不選擇一個位置,它會顯示圖中底部文字的第一個字母。否則,如果我確實選擇了這個位置,它根本不會顯示我的文字。第二個「HT =文本(...)不顯示我的文字都沒有。它顯示我軸上的圖像! 任何想法,爲什麼? 並感謝回答。 –

+0

@HowaidaKhoureieh你嘗試了' ?uicontrol'或'text'命令 –

+0

是的,沒有工作 –

相關問題