在Matlab GUI GUIDE中更改工具栏图标

时间:2013-08-09 00:39:29

标签: matlab user-interface icons toolbar matlab-guide

我正在尝试在按钮中放置一个图标,我正在使用GUI GUIDE。

iconeditor中,我尝试从Matlab图标路径导入文件但不起作用。

然后我尝试像这样编程按钮

function toolbar_OPT_ClickedCallback(hObject, eventdata, handles)
% hObject    handle to toolbar_Print (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

  % Use a MATLAB icon for the tool
  [X, map] = imread(fullfile(matlabroot,'toolbox','matlab','icons','matlabicon.gif'));

  % Convert indexed image and colormap to truecolor
  icon = ind2rgb(X,map);

  % Create a uipushtool in the toolbar
  hpt = uipushtool('CData',icon)

但尚未奏效。任何消化?

1 个答案:

答案 0 :(得分:2)

正如我所见,你必须转换它并且你正在这样做......

但是缺少一个参数:

您需要添加工具栏的句柄作为第一个参数:

hpt = uipushtool(ht,'CData',icon,...

在您的情况下,您必须在handle-structure中查找它。让我知道,如果你不知道怎么做到这个!

修改

更多用于修改工具栏的高级功能可以在Yair的博客“未记录的Matlab”中找到:

figure-toolbar-components

特别是对于你的问题,这可能很有趣:

figure-toolbar-customizations

我强烈推荐Yair Altman的博客!!

修改#2

使用GUIDE时,工具栏会自动创建,并且似乎很难访问其参数。我无法完全测试它,我只是试图通过这个来识别工具栏句柄:

hToolbarTogg = findall(gcf,'tag','uitoggletool1');
set(hToolbarTogg,'CData',icon)

当使用GUIDE创建时,你必须找出工具栏切换的标签,它应该是相同的......