Как установить положение на стеклянной панели в JFrame и JPanel - PullRequest
1 голос
/ 18 сентября 2011

Я хочу показать стекло над моим JFrame. Я мог это сделать, и теперь моя проблема в том, что в левом верхнем углу видна стеклянная панель. Я хочу знать, как установить положение стеклянной панели так, как я хочу (данное местоположение в JFrame или JPanel в JFrame). Я пытался установить местоположение с помощью setPostion (х, у); и setBounds (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 и несколько панелей на стекло. Пожалуйста, скажите мне, как установить положение на стекле. Спасибо

1 Ответ

3 голосов
/ 18 сентября 2011

Хорошо.Я постараюсь дать ответ, даже если вы не опубликовали весь соответствующий код.

Полагаю, «g» - это компонент, который вы хотите использовать, как GlassPane.Вам не нужно добавлять другие компоненты к самой стеклянной панели, но вместо этого создайте иерархию компонентов, как обычно без стеклянной панели.Затем добавьте стеклянную панель к раме с помощью setGlassPane () метода JFrame.

Вот хороший учебник .

...