konnte ich etwa 11 JButtons in einem Kreis schaffen mit diesem Code ......Deaktivieren JButton nach dem ersten Klicken
public class Beginner extends JPanel {
private JButton quest;
public Beginner() {
int n = 10; //no of JButtons
int radius = 200;
Point center = new Point (250, 250);
double angle = Math.toRadians(360/n);
List <Point> points = new ArrayList<Point>();
points.add(center);
for (int i = 0; i < n; i++) {
double theta = i * angle;
int dx = (int) (radius * Math.sin(theta));
int dy = (int) (radius * Math.cos(theta));
Point p = new Point (center.x + dx , center.y + dy);
points.add(p);
}
draw (points);
}
public void draw (List<Point> points) {
JPanel panels = new JPanel();
SpringLayout spring = new SpringLayout();
int count = 1;
for (Point point: points) {
quest = new JButton("Question " + count); //JButton is drawn about 10 times in a circle arragement
quest.setForeground(Color.BLUE);
Font fonte = new Font("Script MT Bold", Font.PLAIN, 20);
quest.setFont(fonte);
add (quest);
count++;
;
spring.putConstraint(SpringLayout.WEST, quest, point.x, SpringLayout.WEST, panels);
spring.putConstraint(SpringLayout.NORTH, quest, point.y, SpringLayout.NORTH, panels);
setLayout(spring);
panels.setOpaque(false);
panels.setVisible(true);
panels.setLocation(10, 10);
add(panels);
}
}
}
Nun, ich habe eine Action für jeden JButton zu schaffen, und es ist So sollte jeder Button nur für einen Klick aktiv sein, danach ändert er seine Farbe auf grün !, ich habe keine Ahnung wie das geht! Danke für Ihre Hilfe!
Mögliche Duplikate von [Deaktivieren Schaltfläche auf klicken vor actionPerformed ist konkurrierendes Java] (http://stackoverflow.com/questions/17807846/disable-button-on-clic-befor-actionperformed-is-competet-java) –