我想在数值控制字段中使用递增/递减按钮来快速跨越范围广泛的值。为了做到这一点,我希望递增/递减按钮用作乘以/除以常数。
一个例子是选择电阻值。为了选择 E12 系列中的值,可以从 1 开始并将其反复乘以 10^(1/12)。12 是您每十年需要多少个值。
有没有办法改变向上/向下按钮的功能,还是我需要编写自己的控件?
我想在数值控制字段中使用递增/递减按钮来快速跨越范围广泛的值。为了做到这一点,我希望递增/递减按钮用作乘以/除以常数。
一个例子是选择电阻值。为了选择 E12 系列中的值,可以从 1 开始并将其反复乘以 10^(1/12)。12 是您每十年需要多少个值。
有没有办法改变向上/向下按钮的功能,还是我需要编写自己的控件?
保持简单,只需将数字控件设为整数(例如 N),然后连接 10^(N/12)。
如果您希望用户从 E12 电阻系列等固定值列表中进行选择,请考虑使用环或枚举而不是数字控件(环中的列表可以在运行时更改,而枚举中的列表不能)。使用环或枚举的值从数组中查找数值。
如果您希望用户能够在数字控件中键入任意值,但也可以使用递增/递减按钮来向上或向下缩放值,则可以使用其递增/递减按钮可见但隐藏数字条目的数字控件没有按钮的第二个数字控件后面的字段。当用户增加或减少隐藏控件时,使用 CharlesB 的答案中所示的隐藏控件的 Value Changed 事件来更新可见控件中的值。
您可以通过侦听“Value changed”事件来执行此操作,该事件检测是否使用了增量或减量,并强制使用适当的值: