Matlab 更改鼠标单击滚动的滑块跳跃的大小
当用户单击滑块的空白空间(滑动空间)时,滑块将跳跃。虽然我已经设置了31步(通过设置滑块步长),但当鼠标单击滑块的空白区域时,仍然只有3次跳跃,这会产生较大的移动[21 11 1每次单击的值] 我想在单击滑块的空白区域时进行较小的移动/跳跃。这张图片解释了空的空间随着时间的推移而跳跃。我在slider的设置中找不到任何选项来设置此功能 我有以下设置Matlab 更改鼠标单击滚动的滑块跳跃的大小,matlab,user-interface,configuration,slider,matlab-figure,Matlab,User Interface,Configuration,Slider,Matlab Figure,当用户单击滑块的空白空间(滑动空间)时,滑块将跳跃。虽然我已经设置了31步(通过设置滑块步长),但当鼠标单击滑块的空白区域时,仍然只有3次跳跃,这会产生较大的移动[21 11 1每次单击的值] 我想在单击滑块的空白区域时进行较小的移动/跳跃。这张图片解释了空的空间随着时间的推移而跳跃。我在slider的设置中找不到任何选项来设置此功能 我有以下设置 ihist=[0:0.0005:0.015]; colors=1:0.01:1.25; handles.output = hObject; % %
ihist=[0:0.0005:0.015];
colors=1:0.01:1.25;
handles.output = hObject;
% % Update slider1 value
guidata(hObject, handles);
maxSliderValue = length(ihist);
minSliderValue = 1;
theRange = maxSliderValue - minSliderValue;
steps = [1/theRange, 10/theRange];
set(handles.slider1, 'SliderStep', steps,'value',1);
在这种情况下,总步数为31,因此滑块不应在3步/点击中完全移动
您可能误解了设置的工作原理。引用文件: 滑块步长,指定为数组,
[minorstep majorstep]
。此属性控制用户单击箭头按钮或滑块槽(滑块通道)时滑块值更改的幅度:
是滑块范围的一部分,用户单击其中一个箭头按钮时,minorstep
属性会增加或减少该范围值
是滑块范围的一部分,用户单击滑块时,majorstep
属性会增加或减少值
在您的示例中,
[minorstep majorstep]
是[1/theRange,10/theRange]
(或[1/30 1/3]
数字),这意味着您需要精确地单击(1/3)^-1==3次才能遍历整个范围。如果您想要求单击30次
(请注意,您的间隔比滑块位置少1次,|--|--|--
),请将majorstep
更改为1/theRange
。您可能误解了设置的工作原理。引用文件:
滑块步长,指定为数组,[minorstep majorstep]
。此属性控制用户单击箭头按钮或滑块槽(滑块通道)时滑块值更改的幅度:
minorstep
是滑块范围的一部分,用户单击其中一个箭头按钮时,值
属性会增加或减少该范围
majorstep
是滑块范围的一部分,用户单击滑块时,值
属性会增加或减少
在您的示例中,[minorstep majorstep]
是[1/theRange,10/theRange]
(或[1/30 1/3]
数字),这意味着您需要精确地单击(1/3)^-1==3次才能遍历整个范围。如果您希望需要单击30次
(请注意,您的间隔比滑块位置少1次,-->----
),请将majorstep
更改为1/therRange
。您希望它做什么?您说过有31个“小”步骤,并且在滑块步骤中也指定了大步骤(即单击空白区域时发生的情况)要大10倍(因此1/30
vs1/3
)-因此,在空白区域上单击3次正是移动它的方法。“总共3次点击应该是31次”是完全错误的。如果您想在每次单击后更改较大的步长(例如1/3->1/15->1/30或任何其他规则),则只需在回调中设置步长。您希望它做什么?您说过有31个“小”步骤,并且在滑块步骤中也指定了大步骤(即单击空白区域时发生的情况)要大10倍(因此1/30
vs1/3
)-因此,在空白区域上单击3次正是移动它的方法。“总共3次点击应该是31次”是完全错误的。如果您想在每次单击后更改较大的步长(例如1/3->1/15->1/30或任何其他规则),那么只需在回调中设置步长即可。非常感谢您,我之前完全误解并浪费了这么多时间。再次非常感谢。非常感谢,我之前完全误解了,浪费了这么多时间。再次感谢。