• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 183
  • Last Modified:

Some help with look and fell in GUI

Look at my picutre.

I would like the textfields to just be one row. So you got the label....then a textfield after that. Not a 3 line textfield (or how much it is)

I also would like to add to buttons at the botten.... Registrate and Cancle.

How do I do this?
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.GridLayout;
import javax.swing.BoxLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
 
 
 
 
 
public class Registrera extends JFrame {
 
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private JFrame thisFrame;
	private Container c;
	private JPanel controlPanel=new JPanel();
	JTextField userNameField = new JTextField("");
	JTextField passwordField = new JPasswordField("");
	JTextField adressField = new JTextField("");
	JTextField nameField = new JTextField("");
	JTextField teleField = new JTextField("");
	JTextField pnrField = new JTextField("");
	
	Registrera() {
	      getRegi();
 
	    }
 
	    public void getRegi() {
	      JPanel connectionPanel;
	      JLabel nameLabel = new JLabel("Name:", JLabel.RIGHT);     
	      JLabel userNameLabel = new JLabel("User Name:", JLabel.RIGHT); 
	      JLabel pnrLabel = new JLabel("Personnummer:", JLabel.RIGHT); 
	      JLabel adressLabel = new JLabel("Adress:", JLabel.RIGHT);
	      JLabel teleLabel = new JLabel("Telefon:", JLabel.RIGHT);
	      JLabel passwordLabel = new JLabel("Password:", JLabel.RIGHT);      
	      
	      connectionPanel = new JPanel(false);
	      connectionPanel.setLayout(new BoxLayout(connectionPanel, BoxLayout.X_AXIS));
	      
	      JPanel namePanel = new JPanel(false);
	      namePanel.setLayout(new GridLayout(0, 1));
	      namePanel.add(nameLabel);
	      namePanel.add(adressLabel);
	      namePanel.add(pnrLabel);
	      namePanel.add(teleLabel);
	      namePanel.add(userNameLabel);
	      namePanel.add(passwordLabel);
	      
	      JPanel fieldPanel = new JPanel(false);
	      fieldPanel.setLayout(new GridLayout(0, 1));
	      fieldPanel.add(nameField);
	      fieldPanel.add(adressField);
	      fieldPanel.add(pnrField);
	      fieldPanel.add(teleField);
	      fieldPanel.add(userNameField);
	      fieldPanel.add(passwordField);
	      
	      connectionPanel.add(namePanel);
	      connectionPanel.add(fieldPanel);
	      
	      thisFrame = this;
	      thisFrame.setSize(500,500);
	      this.setDefaultCloseOperation(EXIT_ON_CLOSE);
	      c = getContentPane();
	
	      
	      this.add(controlPanel, BorderLayout.SOUTH);        
	      c.add( connectionPanel ) ;
	      this.setVisible(true);
	      
	    }
	
}

Open in new window

Unavngivet.bmp
0
Mickeys
Asked:
Mickeys
  • 2
1 Solution
 
ksivananthCommented:
try this,

public class Registrera extends JFrame {
      
      /**
       *
       */
      private static final long serialVersionUID = 1L;
      private JFrame thisFrame;
      private Container c;
      private JPanel controlPanel=new JPanel();
      JTextField userNameField = new JTextField("", 10 );
      JTextField passwordField = new JPasswordField("", 10 );
      JTextField adressField = new JPasswordField("", 10 );
      JTextField nameField = new JPasswordField("", 10 );
      JTextField teleField = new JPasswordField("", 10 );
      JTextField pnrField = new JPasswordField("", 10 );
      
      Registrera() {
            getRegi();
 
          }
 
          public void getRegi() {
            JPanel connectionPanel;
            JLabel nameLabel = new JLabel("Name:", JLabel.RIGHT);    
            JLabel userNameLabel = new JLabel("User Name:", JLabel.RIGHT);
            JLabel pnrLabel = new JLabel("Personnummer:", JLabel.RIGHT);
            JLabel adressLabel = new JLabel("Adress:", JLabel.RIGHT);
            JLabel teleLabel = new JLabel("Telefon:", JLabel.RIGHT);
            JLabel passwordLabel = new JLabel("Password:", JLabel.RIGHT);      
            
            connectionPanel = new JPanel(false);
            connectionPanel.setLayout(new BoxLayout(connectionPanel, BoxLayout.X_AXIS));
            
            JPanel namePanel = new JPanel(false);
            namePanel.setLayout(new GridLayout(0, 1));
            namePanel.add(nameLabel);
            namePanel.add(adressLabel);
            namePanel.add(pnrLabel);
            namePanel.add(teleLabel);
            namePanel.add(userNameLabel);
            namePanel.add(passwordLabel);
            
            JPanel fieldPanel = new JPanel(false);
            fieldPanel.setLayout(new GridLayout(0, 1));
            fieldPanel.add(nameField);
            fieldPanel.add(adressField);
            fieldPanel.add(pnrField);
            fieldPanel.add(teleField);
            fieldPanel.add(userNameField);
            fieldPanel.add(passwordField);
            
            connectionPanel.add(namePanel);
            connectionPanel.add(fieldPanel);
            
            thisFrame = this;
//            thisFrame.setSize(500,500);
            this.setDefaultCloseOperation(EXIT_ON_CLOSE);
            c = getContentPane();
      
            
            this.add(controlPanel, BorderLayout.SOUTH);        
 
            c.add( connectionPanel, BorderLayout.NORTH ) ;
            thisFrame.pack() ;
            this.setVisible(true);
            
          }
}
0
 
MickeysAuthor Commented:
That worked.....just the button as well. I want two buttons at the end

Registrate      Cancel

Do you have an answer for that aswell?
0
 
ksivananthCommented:
try this, copy beofre this.add(controlPanel, BorderLayout.SOUTH);        

      
            controlPanel.add( new JButton( "Registration" ) ) ;
            controlPanel.add( new JButton( "Cancel" ) ) ;
            
            
0

Featured Post

Receive 1:1 tech help

Solve your biggest tech problems alongside global tech experts with 1:1 help.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now