ves*_*ety 1 java eclipse swing
我想在这里要求将JMenubar放入这个Bordlerlayout.当我启动它时,它会随机按钮生成五个圆圈,我想添加一个带有动作滑块的菜单,以便再次随机放置圆圈.所以我想问一下这种方式是否可行,还是有更简单的方法?并且有人知道为什么有时候我开始时只有4个圆圈而不是5个圆圈?
package test2;
import java.awt.Color;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
public class action extends JFrame {
/**
*
*/
private static final long serialVersionUID = 1L;
public static void main(String[] args) {
int size = 5;
int[] randompoints = GetRandomPoints(size);
action gt = new action(size, randompoints);
gt.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
gt.pack();
gt.setVisible(true);
}
private static int[] GetRandomPoints(int size) {
int[] result = new int[size];
for (int i = 0; i < size; i++) {
int helper = (int) (Math.random() * (size * size) + 1);
for (int x = 0; x <= i; x++) {
if (helper == result[x]) {
i--;
}
}
result[i] = helper;
}
return result;
}
public action(int size, int[] randompoints) {
Container pane = getContentPane();
pane.setLayout(new GridLayout(size, size));
for (int i = 0; i < size * size; i++) {
JButton button = new JButton();
button.setBackground(Color.WHITE);
button.setName(Integer.toString(i));
button.setPreferredSize(new Dimension(80, 80));
for (int x = 0; x < randompoints.length; x++) {
if (i == randompoints[x]) {
button.setText("O");
}
}
pane.add(button);
}
}
}enter code here
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
50 次 |
| 最近记录: |