我正在使用 a JPanel
with anOverlayLayout
在彼此之上绘制两个不相关的组件。具体来说,我有一个包含我自己的线条图的透明组件,在它下面,我使用了一个JMapViewer
显示 OpenStreetMap 瓷砖的组件。这行得通。
除非 JMapViewer 异步加载图块。在这种情况下,它会在加载完成时调用repaint()
自己,并将自己绘制在我的线层上。我的线层无法知道这一点,因为它无法知道 JMapViewer 何时选择重新绘制自己。
现在我希望在JPanel
重新绘制地图层时重新绘制我的线层,因为它知道正确的绘制顺序并且知道我的线层必须重新绘制。但它不这样做。
你会如何解决这个问题?