Jump to content

[Tutorial] [Java] Graphical User Interface GUI with JFrame


Recommended Posts

Posted

Hello maxcheater members,

this is my first tutorial, so be gentle  :o

Ill show ya an example of what u can do with JFrame

 

create a new class, name it how you want.

 

import javax.swing.JFrame;

import javax.swing.UIManager;

 

/**

* @author Noxy

*/

 

public class GUIlover{

public static void main(String[]args){

iloveGUI noxy = new iloveGUI();

noxy.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

noxy.setSize(350,100);

noxy.setVisible(true);

try{

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

  }

}

}

 

Create another class as well and name it how u want once again.

import java.awt.FlowLayout;

import java.awt.event.ActionListener;

import java.awt.event.ActionEvent;

import javax.swing.JFrame;

import javax.swing.JTextField;

import javax.swing.JPasswordField;

import javax.swing.JOptionPane;

import javax.swing.UIManager;

import javax.swing.UIManager.LookAndFeelInfo;

 

/**

* @author Noxy

*/

 

public class iloveGUI extends JFrame{

private JTextField element1;

private JTextField element2;

private JTextField element3;

private JPasswordField passwordField;

 

public iloveGUI(){

super("GUI Program");

setLayout(new FlowLayout());

 

element1 = new JTextField(10);

add(element1);

 

element2 = new JTextField("For MaxCheaters");

add(element2);

 

element3 = new JTextField("Made by Noxy", 20);

element3.setEditable(false);

add(element3);

 

passwordField = new JPasswordField("password");

add(passwordField);

 

thehandler handler = new thehandler();

element1.addActionListener(handler);

element2.addActionListener(handler);

element3.addActionListener(handler);

                      try

      {

        for (LookAndFeelInfo info : UIManager.getInstalledLookAndFeels())

        {

            if ("Nimbus".equals(info.getName()))

            {

              UIManager.setLookAndFeel(info.getClassName());

              break;

            }

        }

      }

      catch (Exception e){}

}

private class thehandler implements ActionListener{

 

public void actionPerformed(ActionEvent event){

String string = "";

 

if(event.getSource() == element1)

string=String.format("Field 1 : %s", event.getActionCommand());

else if(event.getSource() == element2)

string=String.format("Field 2 : %s", event.getActionCommand());

else if(event.getSource() == element3)

string=String.format("Field 3 : %s", event.getActionCommand());

else if(event.getSource() == passwordField)

string=String.format("Password Field is : %s", event.getActionCommand());

 

JOptionPane.showMessageDialog(null, string);

}

}

 

}

 

Info: %s : displays a string.

import javax.swing.UIManager; and javax.swing.UIManager.LookAndFeelInfo; are meant to improve graphics of layouts.

import javax.swing.JFrame; and import java.awt.FlowLayout; those imports are for the layouts

import javax.swing.JTextField; creating textfield

import javax.swing.JPasswordField; creating a passwordfield

import java.awt.event.ActionListener; and java.awt.event.ActionEvent; those imports are for creating Events.

import javax.swing.JOptionPane; and at the end JOptionPane is import to display MessageDialogs InputDialogs ConfigDialogs  Options and so on

 

Program Photos:

 

guiprogram.png

testfield.png

Posted

You could explain it a bit, anyway, default JAVA Gui look and feel looks pathetic (for me)

 

You can easily change it, take a look at some.

 

This one looks really cool:

 

try

{

for (LookAndFeelInfo info : UIManager.getInstalledLookAndFeels())

{

if ("Nimbus".equals(info.getName()))

{

UIManager.setLookAndFeel(info.getClassName());

break;

}

}

}

catch (Exception e)

{

 

}

 

System Default:

 

    try

    {

        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

    }

catch (Exception e)

{

 

}

 

Add it at begining of the main method.

 

 

Posted

You could explain it a bit, anyway, default JAVA Gui look and feel looks pathetic (for me)

 

You can easily change it, take a look at some.

 

This one looks really cool:

 

System Default:

 

Add it at begining of the main method.

 

 

 

as i said i wanted to be simple and easy not to make a program with 300 lines ^^.

Anyway, ill add it update new pics and explain it a bit.. bcz as u said the graphics becoming cooler :)

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock