[英]Why won't my JFrame draw?
I am trying to draw to my JFrame with Graphics. 我正在尝试使用Graphics绘制到我的JFrame。 For some reason, it won't draw anything.
由于某种原因,它不会画任何东西。 What am I doing wrong?
我究竟做错了什么? I have added my paint method, imported everything.
我添加了绘画方法,导入了所有内容。 Am I placing the method in the wrong place?
我将方法放置在错误的位置吗?
import java.awt.Canvas;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.JFrame;
public class Main extends Canvas implements MouseListener, KeyListener {
public int WIDTH = 1080;
public static Main main;
public boolean playing = false;
public Main() {
addMouseListener(this);
addKeyListener(this);
JFrame frame = new JFrame("Clicker");
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
public void paint(Graphics g) {
g.setColor(Color.BLACK);
g.fillRect(50, 50, 100, 100);
}
public static void main(String[] args) {
main = new Main();
}
public void MainScreen() {
}
@
Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
}
@
Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
@
Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
@
Override
public void mouseClicked(MouseEvent evt) {
// TODO Auto-generated method stub
}
@
Override
public void mouseEntered(MouseEvent evt) {
// TODO Auto-generated method stub
}
@
Override
public void mouseExited(MouseEvent evt) {
// TODO Auto-generated method stub
}
@
Override
public void mousePressed(MouseEvent evt) {
// TODO Auto-generated method stub
}
@
Override
public void mouseReleased(MouseEvent evt) {
// TODO Auto-generated method stub
}
}
Try to extend from the JFrame
class instead of the Canvas
class: 尝试从
JFrame
类而不是Canvas
类进行扩展:
public class Main extends JFrame implements ...
You also have to edit your constructor then like: 您还必须编辑构造函数,如下所示:
public Main() {
super("Clicker");
addMouseListener(this);
addKeyListener(this);
setExtendedState(JFrame.MAXIMIZED_BOTH);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.