Unt*_*led 6 java swing repaint
当更新请求被传递到swing(系统触发,例如由于调整大小或由另一个窗口阻止,或者由app调用例如通过调用repaint()方法),该请求如何实际处理?在RepaintManager中发生了什么过程?
从你的评论来看:
你知道在peer.getGraphics()中发生了什么吗?
这取决于使用哪个对等实现。
一种实现是WComponentPeer(在 Windows 上运行时使用),它似乎使用两种方式来获取Graphics对象:
如果组件具有类型的父级Window(或者本身就是一个类型),而该类型又具有关联的后台缓冲区图像,Graphics则返回该图像的对象。这取决于图像的类型,但很可能是SunGraphics2D在createGraphics().
ScreenUpdateManager否则,将检索并createGraphics(...)调用一个实例,然后返回一个新SunGraphics2D实例。
请注意,这只是一种可能的方式,它很大程度上取决于所使用的操作系统、JVM 和 UI 工具包。
| 归档时间: |
|
| 查看次数: |
272 次 |
| 最近记录: |