javax.swing.JButton#setLayout ( )源码实例Demo

下面列出了javax.swing.JButton#setLayout ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: freecol   文件: NewUnitPanel.java
/**
 * {@inheritDoc}
 */
@Override
public void removeNotify() {
    super.removeNotify();
    
    removeAll();
    for (JButton jb : buttons) {
        if (jb != null) jb.setLayout(null);
    }
    buttons.clear();            
}
 
源代码2 项目: freecol   文件: NewUnitPanel.java
/**
 * Updates this panel's labels so that the information it displays
 * is up to date.
 */
public void update() {
    removeAll();

    final Player player = getMyPlayer();
    final Europe europe = player.getEurope();

    add(question, "span, wrap 20");

    // The prices may have changed, recreate the buttons
    buttons.clear();
    for (UnitType ut : sort(units, priceComparator)) {
        int price = europe.getUnitPrice(ut);
        boolean enable = player.checkGold(price);
        JButton newButton = new JButton();
        newButton.setLayout(new MigLayout("wrap 2", "[60]", "[30][30]"));
        ImageIcon icon = new ImageIcon(getImageLibrary()
            .getSmallUnitTypeImage(ut, !enable));
        JLabel name = Utility.localizedLabel(ut);
        name.setEnabled(enable);
        JLabel gold = Utility.localizedLabel(StringTemplate
            .template("goldAmount")
            .addAmount("%amount%", price));
        gold.setEnabled(enable);
        newButton.setEnabled(enable);
        newButton.add(new JLabel(icon), "span 1 2");
        newButton.add(name);
        newButton.add(gold);
        newButton.setActionCommand(ut.getId());
        newButton.addActionListener(this);
        buttons.add(newButton);
        add(newButton, "grow");
    }

    add(okButton, "newline 20, span, tag ok");

    setSize(getPreferredSize());
    revalidate();

    shouldEnable = player.checkGold(europe.getUnitPrice(first(units)));
}