Перерисовка панели - Java

Узнай цену своей работы

Формулировка задачи:

Помогите, пожалуйста, разобраться, что не так. Есть форма, в ней панель с прокруткой. Рисую оси для будущих графиков. При нажатии на кнопку они появляются, но если воспользоваться прокруткой панели или свернуть окно с приложением, то оси пропадают и остается белый фон. Если раскомментить строки приведенного кода, то оси вообще не рисует. Хотя эти строки вроде как нужны для перерисовки.
public class NewJFrame extends javax.swing.JFrame {
   
    public NewJFrame() {
        initComponents();   
     
    }
   public void paint(Graphics g0) {
       // super.paint(g0);  
              
        g0.drawLine(10, 10, 10, 100);
        g0.drawLine(10, 80, 400, 80);
 
      //  super.repaint();
}
    
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
            Graphics g0;       
            g0 = jPanel2.getGraphics();
            paint(g0);
           // jPanel2.revalidate();
            //repaint(); 
     
      }                                        
 
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                NewJFrame form = new NewJFrame();
                form.setLocation(300, 200);
                form.setVisible(true);
             
            }
            
        });

Решение задачи: «Перерисовка панели»

textual
Листинг программы
private javax.swing.JPanel jPanel2;
//заменил на мою панель:
    private Panel2 jPanel2;

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.769 из 5