繁体   English   中英

Java Swing:比赛结束后如何为游戏GUI着色

[英]Java Swing: how to shade a game gui after the match has finished

在一个用Java开发的棋盘游戏中,我们希望GUI在游戏结束时被盖过。 我们有一个Jframe,其中有一个JPanel,板上有一些彩色的棋子和盒子(JButton),我们希望一切都变成一种黑白和灰色。 Java中是否有授权方法可以在Java组件中执行此操作?

如果您使用的是Swing,则有几种不同的窗格可以实现此目的,或者类似的窗格(我从标签中假设是)。 您可以使用玻璃窗格。 可以将http://docs.oracle.com/javase/tutorial/uiswing/components/rootpane.html#glasspane玻璃窗格视为CSS覆盖层。 它们不允许与它们后面的组件进行交互。

另外,看看JXLayers和JLayers,它们允许您修改组件实际绘制的方式。

祝好运!

覆盖paintComponent()(或者,如果您向容器中添加了一些组件,则最好覆盖paintComponents()方法)。

呼叫

super.paintComponent(g);
Color semiColor=new Color(0,0,0,128);//the last param represents alpha
g.fillRect(semiColor);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM