2013-03-11 101 views
-1

我的意思是我有一个框架,带有按钮w /动作监听器和4个不同的框架。当我点击按钮时,它会随机打开其中一个4帧。例如,我有框架1,2,3,4。如果我点击我的按钮,它会通过setVisible(true)随机显示其中一个框架我已经设置了代码使其可见并使当前框架不可见我的唯一问题是我不知道按钮将如何随机从4帧中挑选是否有Java gui代码可供选择不同的框架?

+0

'(INT)(Math.round(的Math.random()* 3))'应该返回0-3之间的随机值。你所需要的只是一个包含每一帧的'数组'或一个'switch'或'if'语句来实现显示帧的逻辑 – MadProgrammer 2013-03-11 23:46:45

+1

不要使用4个子帧。而是使用JDialogs。应用程序通常应该只有一个主框架。 – camickr 2013-03-12 01:10:49

+0

请参阅[使用多个JFrames,良好/错误的实践?](http://stackoverflow.com/a/9554657/418556) – 2013-03-12 11:01:06

回答

1

将所有帧添加到List或阵列。创建Random对象并在[0,3]之间生成随机数。现在,您可以在哪里使用帧和随机数生成器列表,您可以使用它。例如:

frames.get(random.nextInt(frames.size())); 

帧 - 所有帧列表
随机 - Random类的实例。

参见:

+0

您可能还想建议switch语句 – MadcoreTom 2013-03-11 23:50:54

+0

是的,这是一个很好的想法。但我更喜欢使用集合而不是switch语句。它对我更优雅。在我们想添加几个新框架的情况下,我们可以只将它添加到列表和这一切。大开关对我来说是不可读的。 – 2013-03-11 23:56:14

+0

感谢球员们的所有帮助,但这对我来说太难了,所以我决定让这四个框架有自己的按钮来显示它们,并将按钮放在第一帧 – 2013-03-12 00:51:14