我有一个需要两个课程的程序。 player-Names类和Player-Model类。我希望player-Names类每半秒重绘一次,而Player-Model类每秒重绘60次,因为我希望运动流畅。我遇到的问题是我希望所有这些都在一个J帧上完成。我该怎么做呢?如果你能引导我朝着正确的方向前进,或者给我一个很好的例子!谢谢你:)。
出于某种原因,它不会让我发布,所以我会输入一些随机代码
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import javax.swing.JComponent;
import javax.swing.JFrame;
public class PlayerNames extends JFrame {
static int connectionTimer = 0;
static int connectionTimer2 = 0;
static int reconnect = 0;
static int reconnectValue = 1;
static int x = 0;
static int reconnectWait = connectionTimer + reconnectValue;
private static final long serialVersionUID = 1L;
public graph gg = new graph();
public graph g = new graph();
private static GameClient socketClient;
private GameServer socketServer;
public static void main(int width, int height) {
PlayerNames tt = new PlayerNames();
// PlayerGraphics t = new PlayerGraphics();
tt.setSize(width, height);
if (Game.ServerOwner == 1) {
tt.setTitle("Server: " + Game.username);
} else {
tt.setTitle("Username: " + Game.username);
}
tt.setVisible(true);
tt.getContentPane().add(tt.gg);
tt.getContentPane().add(tt.g);
tt.setDefaultCloseOperation(EXIT_ON_CLOSE);
tt.setResizable(false);
}
答案 0 :(得分:0)
javax.swing.timer是你的朋友。您需要绘制一些内容,并根据您的模型(即播放器数据)绘制一些方法。然后使用计时器重复触发此绘图。
Oracle有一个可能对您有帮助的教程:http://docs.oracle.com/javase/tutorial/uiswing/misc/timer.html