📄 cgamepanel.java
字号:
package chiidanceapp;
import java.awt.Graphics;
import javax.swing.JPanel;
import java.awt.Image;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.Color;
public class CGamePanel extends JPanel implements Runnable{
//////////////////////////////////////////////////////////////////////
private Image OffScreen;
private Graphics DrawOffScreen;
private Thread newThread;
private int Interval;
Color color;
CLoad Load;
CDanceUI DanceUI;
CStartUI StartUI;
CSelectionUI SelectionUI;
CTalk talk;
CSceneInfo SceneInfo;
CEndUI EndUI;
CScoreUI ScoreUI;
////////////////////////////////////////////////////////////////////////
public CGamePanel() {
Load = new CLoad();
switch( Load.loadRefleshSpeed() )
{
case 1:
Interval = 300;
break;
case 2:
Interval = 100;
break;
case 3:
Interval = 50;
break;
case 4:
Interval = 10;
break;
}
SceneInfo = new CSceneInfo();
StartUI = new CStartUI();
newThread = new Thread( this );
newThread.start();
}
////////////////////////////////////////////////////////////////////////
public void setInterval( int Interval )
{
this.Interval = Interval;
}
////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////
public void paint( Graphics g )
{
super.paint( g );
super.paintComponent( g );
if( OffScreen == null )
{
OffScreen = createImage( 800,600 );
}
if( OffScreen != null )
{
DrawOffScreen = OffScreen.getGraphics();
}
if ( DrawOffScreen != null )
if( DrawOffScreen instanceof Graphics2D )
{
Graphics2D g2 = ( Graphics2D )DrawOffScreen;
g2.setRenderingHint(
RenderingHints.KEY_TEXT_ANTIALIASING,
RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
}
switch( SceneInfo.getGameState() )
{
case 0:
StartUI.paint( DrawOffScreen,this );
break;
case 1:
SelectionUI.draw( DrawOffScreen,this );
break;
case 2:
DanceUI.paint( DrawOffScreen,this );
break;
case 3:
ScoreUI.paint( DrawOffScreen,this );
break;
case 4:
EndUI.paint( DrawOffScreen,this );
break;
}
g.drawImage( OffScreen,0,0,this );
g.dispose();
}
////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////
public void run() {
while( true )
{
repaint();
try{
newThread.sleep( Interval );
Thread.sleep( Interval );
}
catch( Exception ex ){}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -