Minimal Swing application

Here's a simple, minimal Swing application. Such a class is useful when you need to quickly exercise or test a specific technique. Simply edit the class to exercise the desired part of the Swing API.

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JOptionPane;

 Simple harness for testing GUI code.
 <P>To use this class, edit the code to suit your needs.  
public final class MinimalSwingApplication {
   Build and display minimal GUI.
   <P>The GUI has a label and an OK button.
   The OK button launches a simple message dialog.
   No menu is included.
  public static void main(String... aArgs){
    MinimalSwingApplication app = new MinimalSwingApplication();

  private void buildAndDisplayGui(){
    JFrame frame = new JFrame("Test Frame"); 
  private void buildContent(JFrame aFrame){
    JPanel panel = new JPanel();
    panel.add(new JLabel("Hello"));
    JButton ok = new JButton("OK");
    ok.addActionListener(new ShowDialog(aFrame));
  private static final class ShowDialog implements ActionListener {
    /** Defining the dialog's owner JFrame is highly recommended. */
    ShowDialog(JFrame aFrame){
      fFrame = aFrame;
    @Override public void actionPerformed(ActionEvent aEvent) {
      JOptionPane.showMessageDialog(fFrame, "This is a dialog");
    private JFrame fFrame;

Less trivial Swing applications are also available for download.

Would you use this technique?
Yes   No   Undecided   
© 2015 Hirondelle Systems | Source Code | Contact | License | RSS
Individual code snippets can be used under this BSD license - Last updated on September 21, 2013.
Over 2,000,000 unique IPs last year - Built with WEB4J.
- In Memoriam : Bill Dirani -