2013-03-12 2 views
1

Я делаю игру Master Mind, я заполнил свою матрицу JButtons, чтобы люди могли нажимать на них, чтобы изменить цвет.Измените форму JButton

Теперь я хочу изменить форму своих прямоугольных кнопок на круги, есть способ, которым я могу изменить их все сразу, так как я работал с циклом, чтобы создать их все.

ответ

2

Вы можете найти в Google учебник об этом.

Это простой учебник: How to change the shape of a JButton

+0

нужно учитывать, что [ссылка только ответы, как правило, должны быть удалены] (http://meta.stackexchange.com/questions/8231/are-answers-that-just-contain-links- в другом месте, на самом деле-хорошие-ответы) –

5

Вот некоторые методы, которые должны быть переписаны, чтобы изменить форму компонента. (В том числе примеры кода)

protected void paintComponent(Graphics g) 
    { 
    if (getModel().isArmed()) { 
     g.setColor(Color.lightGray); 
    } else { 
     g.setColor(getBackground()); 
    } 
    g.fillOval(0, 0, getSize().width-1,getSize().height-1); 

    super.paintComponent(g); 
    } 

    protected void paintBorder(Graphics g) { 
    g.setColor(getForeground()); 
    g.drawOval(0, 0, getSize().width-1,  getSize().height-1); 
    } 

    Shape shape; 
    public boolean contains(int x, int y) { 
    if (shape == null || 
     !shape.getBounds().equals(getBounds())) { 
     shape = new Ellipse2D.Float(0, 0, getWidth(), getHeight()); 
    } 
    return shape.contains(x, y); 
    } 
Смежные вопросы