2014-11-06 31 views
1

我想弄清楚如何將HSV顏色圖表添加到我的應用程序的窗口。我知道Java提供的顏色選擇器,但我希望將圖表集成到我自己的窗口中,而不是打開一個新窗口。有沒有辦法將顏色選擇器中的一個面板直接添加到我的窗口中,或者有辦法自己創建一個面板嗎?主窗口中的Java Color Chooser面板?

回答

1
JFrame frame = new JFrame(); 
    frame.setSize(500, 500); 
    frame.getContentPane().setLayout(new BorderLayout()); 
    JColorChooser colorChooser = new JColorChooser(); 
    AbstractColorChooserPanel hsvPanel = colorChooser.getChooserPanels()[1]; 
    frame.add(hsvPanel, BorderLayout.CENTER); 
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    frame.setVisible(true); 

我能夠通過訪問默認JColorChooser的getChooserPanels中的1處的元素來拉出HSV面板。

儘管考慮到JChooserPanel的實現可能會改變排序,但這可能並不理想。

+0

謝謝!這工作就像我想:) – User892313 2014-11-06 17:10:49

+1

你有沒有嘗試過不同的外觀和感覺和/或多個平臺,HSV面板可能並不總是第二個面板... – MadProgrammer 2014-11-06 23:52:03

+0

是的,你必須小心,因爲我說的代碼很大程度上依賴於實施。您可能希望查看可能使用您自己實現的使用HSV模型的AbstractColorChooserPanel初始化JColorChooser,但不幸的是,這些實現對用戶和專有隱藏。 – fr1eza 2014-11-07 10:38:41