Как я могу отключить JPanel при запуске JFrame - PullRequest
0 голосов
/ 17 апреля 2019

Я хочу отключить JPanel в начале JFrame Я знаю код, который мне нужно использовать, но я не знаю, куда мне его поместить

public class Fenetre1 extends JFrame {
//code JFrame
    private class Affichage implements ActionListener {
//action
}
}
public class Test {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
Fenetre1 f = new Fenetre1 ();
f.panel.setEnabled(false);

    }

Ответы [ 3 ]

1 голос
/ 18 апреля 2019

Вы можете установитьEnabled (false) при создании JPanel.Если вы хотите включить и включить JPanel, вам, вероятно, следует использовать прослушиватель.

Примечания из документации Java (https://docs.oracle.com/javase/7/docs/api/javax/swing/JComponent.html)

  • Примечание: отключение компонента не отключаетего дочерние элементы.

  • Примечание. Отключение облегченного компонента не мешает ему получать MouseEvents.

    JFrame jframe = new JFrame();
    
    JPanel jpanel = new JPanel();
    jpanel.setEnabled(false);
    
    jframe.add(jpanel);
    
0 голосов
/ 17 апреля 2019

Ваш ответ меня немного вдохновил, я использую таблицу компонентов в JPanel, поэтому я просмотрел всю таблицу и отключил каждый компонент. Я поместил код в класс, наследующий JFrame:

 for(int j= 0;j<tab_component.length;j++) 
            {
                    tab_buttonsOperateur[j].setEnabled(false);
            } 

все равно спасибо

0 голосов
/ 17 апреля 2019

Может быть JPanel не может быть сфокусированным, но Объект s, как JTextField или JTextArea, способен фокусироваться.

Если у вас есть объекты, подобные тем, которые есть в JPanel, используйте textArea.setFocusable(false).

...