在VB中,您可以使用zOrder
。在.Net中,它是.SetChildIndex
。
在您问之前,不,在这种情况下,我不使用布局管理器。如果两个组件相互重叠,那么在显示它们之后如何更改顺序?
由于空间不足,我有一个按钮在另一个组件(标签)的顶部稍有重叠。我将JLabel添加到了按钮 之前
的表单中,并且在加载表单时看起来不错。但是,当用户单击该按钮时,JLabel移至后面,使其大部分消失。有没有办法把它放在前面?我尝试放入label.grabFocus()
按钮的ActionListener,但是没有用。
当组件在面板上重叠时,您需要告诉面板,以便可以确保按其正确的ZOrder重新绘制组件:
您可以通过重写isOptimizedDrawingEnabled()
JPanel的return方法来做到这一点false
。
问题内容: 我有一个swing应用程序,在其中可以在JPanel中显示图像。如果应用程序无法生成图像,我想从JPanel中删除前一个图像,并用JTextField和消息替换它。我可以添加文本字段,但是它是在先前内容的顶部绘制的,该内容本身是JPanel的子类。这是我所拥有的: 如何获得cdPanel完全重绘自身? 问题答案: 您可以简单地尝试致电: 代替
嗨,我正在开发swing应用程序,但我面临一个问题。 当我第一次运行application时,它位于我决定设置组件的适当位置。但问题发生在 我最小化&再次最大化框架窗口自动更改它的位置。 我哪里出错了?
问题内容: 有人可以告诉我为什么组合框不显示吗?我有一个控制器: 和一个观点 由于TestController中的 setLayout(null) ,我看不到comboBox。如果我将 add(cgView.comboBox)添加 到TestContoller()中,则它看起来像这样: 比我能看到的。有人可以告诉为什么吗? 因此,我的解决方案是始终将组件添加到TestController中,或通过
问题内容: 我有一个外部面板,在外部面板上有另一个jPanel。 如果我在内部面板上单击鼠标右键,则应该执行外部面板的右键单击操作。如果我确实在内部面板上单击鼠标左键,则应该发生其自身内部面板的点击动作。 是否可以将点击事件从一个面板传递到另一面板? 问题答案: 要解决此问题,您需要解决许多问题。 首先是要了解鼠标事件与创建它的组件有关,尤其是位置信息。单击点是相对于源组件x / y位置的偏移量(
我在同一个JPanel上有一个JButton和一个Point(由飞跃运动控制的运动)。但是,它们与顶部的JButton重叠。 有没有办法让我的点始终在JPanel应用程序窗口中的顶部? 这是一个代码片段:
有人能说出为什么组合框没有显示?我有一个控制器: 和视图 由于TestController中的setLayout(null),我看不到组合框。如果我将add(cgview.comboBox)添加到我的TestContoller()中,使其看起来如下所示: 比我能看到的还要多。有人能说出原因吗? 所以我的解决方案是始终在TestController中添加组件,或者将TestController作为a