JColorChooser
ですべてのデフォルトパネルを非表示にするにはHSB?JColorChooser:すべてのデフォルトパネルを非表示にしてHSBパネルのみを表示
そしてそれはJTabbedPaneのなしでちょうどHSBを表示することが可能である、単なるパネル
ありがとうございました!
JColorChooser
ですべてのデフォルトパネルを非表示にするにはHSB?JColorChooser:すべてのデフォルトパネルを非表示にしてHSBパネルのみを表示
そしてそれはJTabbedPaneのなしでちょうどHSBを表示することが可能である、単なるパネル
ありがとうございました!
import javax.swing.*;
import javax.swing.colorchooser.*;
class ColorChooserTest {
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
JColorChooser cc = new JColorChooser();
AbstractColorChooserPanel[] panels = cc.getChooserPanels();
for (AbstractColorChooserPanel accp : panels) {
if (accp.getDisplayName().equals("HSB")) {
JOptionPane.showMessageDialog(null, accp);
}
}
}
});
}
}
試してみることができます:setChooserPanels
これを行うJColorChooserの方法。その他のヘルプhere。
あなたがパネルを削除したい場合は、ここでは、このアプローチに従うことができ、私はスウォッチやRGB以外のすべてのパネルを取り外しよ、
AbstractColorChooserPanel[] panels=colorChooser.getChooserPanels();
for(AbstractColorChooserPanel p:panels){
String displayName=p.getDisplayName();
switch (displayName) {
case "HSV":
colorChooser.removeChooserPanel(p);
break;
case "HSL":
colorChooser.removeChooserPanel(p);
break;
case "CMYK":
colorChooser.removeChooserPanel(p);
break;
}
また、単純なループで行うことができます。
AbstractColorChooserPanel[] panels = jColorChooser1.getChooserPanels();
for (AbstractColorChooserPanel accp : panels) {
if(!accp.getDisplayName().equals("HSB")) {
jColorChooser1.removeChooserPanel(accp);
}
}
また、[この回答](http://stackoverflow.com/a/9000014/418556)も参照してください。 –