-->

改变JSlider的条件depanding最低和最高值(Changing the min and m

2019-09-23 19:55发布

我创建Netbeans中的一个Swing GUI。 该GUI的目的,是打开一个(缓冲)图像(在JLabel如图标),并应用仿射在其上变换。 现在有4个变换,我做如下。

现在,每次变换需要两个滑块以更改X和Y值,不同的是旋转的,这将只需要一个。 我就是这么做的,因为它要比不得不为所有4种类型的变换做的四个选项卡更好。 此外,我希望它是这样的,例如,如果图像被旋转时,相同的旋转后的图像可以通过从下拉列表中选择的剪切剪切。

问题是(有):我要如何重新绘制标签图标,并采用同样的粉刷图像不同变换? 此外,如何更改选择的最小和JSlider的depanding的影响最大价值?

Answer 1:

你应该保存原来装的BufferedImage,创造它的拷贝 - 这样你就不会“消灭”了。

对于不断变化的价值有方法setMaximum和setMinimum -添加侦听器列表,如在规定的Oracle教程和修改值。



Answer 2:

由于@丹尼尔的回答一个具体的例子,本文使用Java 2D图像处理描述程序ImageDicer 。 它构建一个TreeMap<String, BufferedImageOp>其中的每一个可以从被选择JComboBox并施加到BufferedImage

另请参阅相关的例子在这里和这里 。



文章来源: Changing the min and max value of JSlider depanding on condition