我在使用行基元和JLables的应用程序中遇到问题。我尝试解释一下:


我必须使用线来代表道路并使用JLabels来代表城市来绘制车辆路线。我需要使用JLabels,因为每个JLabel都有一个侦听器,该侦听器显示一个包含有关城市信息的对话框。
我重新定义主paint()JPanel方法。在该方法中,我首先调用super.paint(),然后绘制线条,最后将标签添加到JPanel


问题是线条与标签重叠,而与绘制顺序无关。有什么建议吗?

最佳答案

您还可以覆盖paintComponent()paintChildren()JPanel方法。
paintChildren()中,调用线条图,然后在super中绘制JLabels

07-27 13:48