我使用uicomponent
创建了一个滑块,可以在File Exchange
handles.slid=uicomponent('style','slider',0,90,5);
handles.slid.MajorTickSpacing=10;
handles.slid.MinorTickSpacing=10;
handles.slid.Paintlabels=1;
handles.slid.PaintTicks=1;
标签最初设为 0 10 20 30 40 50 60 70 80 90
是否可以将标签设置为 a b c d e f g h i j ?
答案 0 :(得分:2)
你必须使用Java。我能想到的最简单的方法是修改已经创建的JSlider Java组件的现有LabelTable。请尝试以下代码:
labels = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'};
lt =get(hu_slider, 'LabelTable');
for i=1:10
key = java.lang.Integer(10*(i-1));
val = lt.get(key);
val.setText(labels{i});
lt.put(key, val);
end
set(hu_slider, 'LabelTable', lt);
hu_slider.JavaComponent.updateUI;
当然,假设您有10个刻度。