Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在JFrame和JPanel中设置玻璃窗格的位置_Java_Swing_Glasspane - Fatal编程技术网

Java 如何在JFrame和JPanel中设置玻璃窗格的位置

Java 如何在JFrame和JPanel中设置玻璃窗格的位置,java,swing,glasspane,Java,Swing,Glasspane,我想在我的JFrame上显示一个玻璃窗格。我可以这样做,现在我的问题是,玻璃窗格在左上角是可见的。我想知道如何设置玻璃窗格的位置(JFrame中的给定位置或JFrame上的JPanel)。我尝试使用 定位(x,y);和立根(x,y,w,h);但它并没有成功。我使用Netbeans。下面是我的代码如何显示玻璃窗格 public void showPanelMy(){ javax.swing.JList jList1; javax.swing.JPanel jPanel1;

我想在我的JFrame上显示一个玻璃窗格。我可以这样做,现在我的问题是,玻璃窗格在左上角是可见的。我想知道如何设置玻璃窗格的位置(JFrame中的给定位置或JFrame上的JPanel)。我尝试使用 定位(x,y);和立根(x,y,w,h);但它并没有成功。我使用Netbeans。下面是我的代码如何显示玻璃窗格

public void showPanelMy(){

    javax.swing.JList jList1;
    javax.swing.JPanel jPanel1;
    javax.swing.JScrollPane jScrollPane1;

    jPanel1 = new javax.swing.JPanel();
    jScrollPane1 = new javax.swing.JScrollPane();
    jList1 = new javax.swing.JList();
    JPanel g=(JPanel)myJFrame.getGlassPane();
    g.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
    setMaximumSize(new java.awt.Dimension(100, 100));
    g.setBackground(new java.awt.Color(204, 92, 92));

    g.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

    jPanel1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
    jPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

    jList1.setModel(new javax.swing.AbstractListModel() {....}
    });
    jScrollPane1.setViewportView(jList1);
    jPanel1.add(jScrollPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 10, 120, 120));

    g.add(jPanel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 10, 140, 140));}

这是我的测试代码。在这里,我在玻璃窗格上放置了一个JList和一些面板。请任何人告诉我如何设置玻璃窗的位置。谢谢

好的。即使你没有发布完整的相关代码,我也会尽力给出答案

我想“g”是你想要像玻璃窗一样使用的组件。 您不必向glasspane本身添加其他组件,而是像通常不使用glasspane时那样构建组件层次结构。然后使用JFrame方法将玻璃窗格添加到框架中


这是一个很好的例子。

我在你发布的代码中没有看到任何玻璃窗格。请在SSCCE.JPanel g=(JPanel)myJFrame.getGlassPane();:)上发布整个代码或更好的代码最好链接到最新版本的JavaDocs。我已将您的答案编辑为指向J2SE 7。有关获取最新文档链接的提示,请参阅。非常感谢海森堡。我试过你说的。我将组件的属性设置为它们应该位于的位置。然后一切都正常:)并且@camickr+1提供了出色的解决方案