我有一个java.awt.Window
的子类。在这个小类中,我想覆盖public void paint(Graphics g)
函数来绘制我自己的东西。如何正确覆盖awt paint()方法
的问题是,我不知道如何正确地调用重绘。一切都已实施,我相信它的工作原理,因为如果我打开一个FileChooser
并关闭java.awt.Window
重新绘制,并显示正确的东西。
但是,如果我自己调用对象的方法repaint()
它不会重新绘制。
你有什么想法,我如何正确地调用重绘?
public class MyWindow extends java.awt.Window {
public MyWindows(Window owner) {
super(owner);
}
public void paint(Graphics g) {
g.fillRect(50,50,50,50);
}
}
MyWindow window = new MyWindow(owner);
window.repaint(); //this call the paint method but dont show drawn things
为校正 – Criska
您在另一评论提到,你正在使用@VinceEmigh感谢vlcj,在vlcj测试源中,有一些正是你想要做的事情的例子。 https://github.com/caprica/vlcj/blob/master/src/test/java/uk/co/caprica/vlcj/test/overlay – caprica