Мне нужно нарисовать график поверх JPanel, переопределив метод JPCelel paintComponent ().
При разработке графического интерфейса с использованием сетевых компонентов, когда я перетаскиваю JPanel поверх JFrame, он генерирует код путем создания закрытой переменной JPanel-объекта. В таком случае, как я могу переопределить его метод рисования над ним ...
или, если я напишу код для класса, расширив JPanel и переопределив метод для его рисования, я должен создать новый JFrame и добавить в него JPanel ..
JFrame fr = new JFrame ();
fr.add (панель); // панель - это объект класса, который расширяет JPanel, где я рисую
fr.setVisible (истина);
В этом случае это работает ..
Но если я получаю ссылку на автоматически созданный класс, который расширяет JFrame сетевыми компонентами, и использую его для добавления JPanel, используя метод add ссылки, то он не работает ...
class x extends JPanel
{
paintComponent(Graphics g){ //overridden method
//my code for drawing say lines goes here..
}
}
class y extends Thread
{
z obj;
y(z obj){
this.obj=obj;
}
public void run(){
x pane=new x();
pane.setVisible(true);
obj.add(pane);
obj.setVisible(true); //im not getting the pane visible here.. if i created a new JFrame class here as i said earlier and added the pane to it i can see it..
}
}
class z extends JFrame
{
z(){//code generated by netbeans}
public static void main(String args[])
{
new y(new z()).start();
}
}
Это не показывает ошибки, но когда я запускаю программу, виден только Jframe .. JPanel не отображается ...
Простите, если вопрос глупый .. я новичок ..
Заранее спасибо ...