我对Java中的图形是陌生的,并且难以掌握从一种方法(paintComponent())绘制所有图形的整个概念。我只是想知道我们是否可以在paintComponent之外绘制图形。那有可能吗?是否可以在main方法中编写一行,例如: fillRect(100,100,500,400); 并绘制一个矩形? 如果可能的话,这是Java的传统做法吗?
基本上,我问您是否可以在paintComponent类之外绘制图形,这是否是常规的。
答案 0 :(得分:0)
您可以绘制到saved_model_cli run --dir /export_dir --tag_set serve --signature_def out --inputs 'x:0=test_in1.npy;1:0=test_in2.npy' --tf_debug
,但是如果要在屏幕上绘制它,通常需要使用BufferedImage
。您可以将传递到paintComponent
的{{1}}实例传递给其他类,这些实例可以执行更复杂的操作,但是您永远不要维护该实例的引用,也不要尝试在绘制循环上下文之外进行绘制。 / p>
有关更多详细信息,请参见Painting in AWT and Swing和Performing Custom Painting
如果您需要对绘画过程进行更多控制,也可以使用Graphics
有关更多详细信息,请参见BufferStrategy and BufferCapabilities
您应该了解的事情:
paintComponent
方法中)BufferStrategy
使用“主动渲染”方法,可以完全控制绘画过程,但不能绘画Swing组件