本文由 陳思羽 于 2011年8月24號(hào) 出品..
由于此組件是個(gè)人開(kāi)發(fā)。
所以轉(zhuǎn)載請(qǐng)注明出自:www.tkk7.com/chensiyu04

這個(gè)組件第一次見(jiàn)到它時(shí) 是在JavaFX2.0 上。。不知道JavaFX2.0將來(lái)如何..但不得不承認(rèn)得是..UI好看..
具體JavaFX將來(lái)怎么樣..看看在說(shuō)..
我們來(lái)討論這個(gè)組件.其實(shí)很簡(jiǎn)單.
首先..他是個(gè)合體.由JButton 和 JPopupMenu 組合而成.
我們將在JButton得action事件里這么寫(xiě).
addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
Rectangle rect = IChoiceBox.this.getBounds();
menu.show(IChoiceBox.this, 0, rect.height);
}
});
將Menu show出去.
剩下得就是繼承重繪 BasicMenuItemUI 以及 重寫(xiě) JPopupMenu 得paintComponent
具體邏輯就要自己寫(xiě)了... 由于代碼里牽連自己得業(yè)務(wù)比較多..暫時(shí)不好開(kāi)源..
過(guò)段時(shí)間在開(kāi)放..