Круглая кнопка Java

Сделал простую игру, все работает как я представлял. только хотел бы вместо этого jbutons по умолчанию иметь круглую кнопку. Есть ли встроенная функция Java для изменения кнопок формы?! [Game` mreza = new JButton [8] [8];

for(int i=0;i<8;i++){
    for(int j=0;j<8;j++){
        mreza[i][j]=new JButton();
        //mreza[i][j].setBorder( BorderFactory.createBevelBorder ( BevelBorder.RAISED, Color.blue, Color.red ) );


p.add(mreza[i][j]);
Akcija ak=new Akcija();
mreza[i][j].addActionListener(ak);`][1]

person user3041952    schedule 14.12.2013    source источник
comment
Нет, для этого нет встроенных функций, но есть способы обойти это, и вам поможет небольшой поиск.   -  person Hovercraft Full Of Eels    schedule 14.12.2013
comment
Просмотрите эту ссылку например.   -  person Hovercraft Full Of Eels    schedule 14.12.2013
comment
Спасибо ! Я посмотрю. Я надеялся, что в Java есть какой-то метод реализации для изменения основных форм кнопок :)   -  person user3041952    schedule 14.12.2013
comment
Было бы неплохо, если бы они это сделали, но Swing в этом отношении несколько ограничен.   -  person Hovercraft Full Of Eels    schedule 14.12.2013
comment
Я надеялся, что в Java есть какой-нибудь метод, позволяющий изменять основные формы кнопок. Хотя я рад, что это не так. Круглые кнопки менее удобны, чем квадратные / прямоугольные, особенно когда дело доходит до нажатия на них с помощью мыши.   -  person Andrew Thompson    schedule 14.12.2013


Ответы (1)


Взгляните на этот подкласс JButton. Он ведет себя как обычная кнопка, поэтому вам не нужно изменять какой-либо код, кроме строки, в которой вы его создаете:

mreza[i][j]=new OvalButton();

(Он называется овалом только потому, что если вы его растянете, кнопка станет овалом, однако, если вы установите одинаковую ширину и высоту, тогда это будет круг.) Кнопка будет реагировать только при нажатии в пределах круга.

person Luka Kralj    schedule 05.05.2019