user650679
user650679

Reputation: 27

need to init the JFrame

I dont know how to init the JFrame windows. What I need to write to init im?

I have created at the main this:

Panel Panel=new Panel();

Panel.init();

JFrame frame = new JFrame("Shape Project");
frame.add(Panel);
frame.setResizable(false);
frame.setSize(new Dimension(1200, 650));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);

and in the JPanel class I have write this:

public  class Panel extends JFrame  
{   
    public void init()
    {
    }   
}

But when I active the frame it's does not active. What I need to write at the init func that the windows will open?

Upvotes: 0

Views: 5356

Answers (4)

Jenny
Jenny

Reputation: 45

this is my example about the init of JFrame :

public class Windows{

  public static void main(String args[]){

  SJFrame window = new SJFrame("NEWNEWNEW");
  window.init();

   }
}


public class SJFrame extends JFrame(){

  public SJFrame(String s){

  super(s);
  }
  void init(){

  Container panel = this.getContentPane();

  panel.setBackground(Color.green);
  panel.setLayout(new GridLayout(5,1));
  JLabel jl1 = new JLabel("UserName");
  JLabel jl2 = new JLabel("PassWord");

  this.add(jl1);
  this.add(jl2);
  this.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE) ;
  this.setSize(300,100);
  this.pack();
  this.setVisible(true);
 }
}

Upvotes: 1

Afra
Afra

Reputation: 2592

Your panel class should extend JPanel, not JFrame. You can add components to JPanel such as JButton, JList, etc

This is an example code you need to init a JFrame if you don't create own classes:

public class LogMain 
{
    public static void main(String[] args)
    {   
        JFrame window = new JFrame("Log");
        window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        window.setSize(300,300);
        window.setResizable(false);
        JPanel panel = new JPanel();
        JButton openFile = new JButton("Btn1");
        JButton openDir = new JButton("Btn2");
        panel.add(openFile);
        panel.add(openDir);
        window.add(panel);
        window.setLocationRelativeTo(null);
        window.setVisible(true);

     }
}

Upvotes: 1

MByD
MByD

Reputation: 137392

You already have a JFrame (frame). so now you should add components for your panel (you may do it in the main class as well). Such components are JTextField, JButton, etc. (and even another JPanel) each component you can add to the panel using panel.add(component_name); it is also recommended to follow the tutorial as Erkan mentioned.

Upvotes: 1

Erkan Haspulat
Erkan Haspulat

Reputation: 12572

Try pack(); method of JFrame. If you are planning to develop with Swing, I recommend you to follow this tutorial:

http://download.oracle.com/javase/tutorial/uiswing/index.html

Upvotes: 3

Related Questions