我正在创建一个颜色选择器,需要修改其中一个颜色选择器面板。
我想要的是,我想通过RGB字段输入输入值来设置颜色,问题是RGB值似乎被禁用在api中有一个方法可以打开RGB输入来获取值?
答案 0 :(得分:7)
这里似乎很好。
import javax.swing.*;
class ColorChooserTest {
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
JOptionPane.showMessageDialog(null, new JColorChooser());
}
});
}
}
无论如何,你可以组合RGB滑块面板和HSB面板吗?
是的,显然这是可能的。检查这个(非常脆弱,布局不当)的例子。
import java.awt.*;
import javax.swing.*;
import javax.swing.colorchooser.*;
import javax.swing.border.*;
class ColorChooserTest2 {
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
JColorChooser cc = new JColorChooser();
AbstractColorChooserPanel[] panels = cc.getChooserPanels();
JPanel p = new JPanel();
panels[1].setBorder(
new TitledBorder(panels[1].getDisplayName()));
p.add(panels[1]);
panels[2].setBorder(
new TitledBorder(panels[2].getDisplayName()));
p.add(panels[2]);
JPanel gui = new JPanel(new BorderLayout(2,2));
gui.add(p, BorderLayout.CENTER);
gui.add(cc.getPreviewPanel(), BorderLayout.SOUTH);
JOptionPane.showMessageDialog(null, gui);
}
});
}
}