Notes - Java Swing

.plan
[Last 5] [Last 10] [Index] [RSS Feed]
[Full .plan (over 1MB)]
Contact Me

Notes

Notes
SubVersion
Vim
C and C++
FreeBSD
more...

RMITCS

C Helpdesk Resources
Customising Your CS Account
CS Fluxbox Menu Maker

Software

Codepile
Assorted little scripts and apps.
dumps.pl - FreeBSD Backup script
rastodo.py - Python Console todo/reminder
more...
Android
NumLock
Lost Emulators

Game Mods

LethalMod
A Max Payne 2 mod - more realistic and deadly.
more...

Image Gallery

Image Gallery
Photos
Screenshots
more...

Roleplaying Games

Shadowrun Notes(4th ed)
Heavy Gear Notes(2nd ed)
GURPS Notes
GameMastering Notes

Miscellaneous

links
Taglines
crazy
Trombone slide position chart [PDF]
[Back to home page]
[Back to Index]

[Raw XML]
JAVA Swing GUI tips and howtos.

Contents:


Opening and saving files using a JFileChooser

This example shows how to use a single filechooser to open and save. The filechooser will remember the directory it entered last which makes it a lot easier for the user. openFile and saveFile can be buttons or menu items with an ActionListener.


   public void actionPerformed(ActionEvent event)
   {
      Object source = event.getSource();

      if (source == openFile)
      {
         if (fileChooser.showOpenDialog(this) == JFileChooser.APPROVE_OPTION)
         {
            try
            {
               File file = fileChooser.getSelectedFile(); //get file(path+name)
               BufferedReader in = new BufferedReader (new FileReader(file));
               //in.readLine() etc
            }
            catch (Exception e) { //ignore...
            }
         }
         else { //user cancelled...
         }
      }
      else if (source == saveFile)
      {
         if (fileChooser.showSaveDialog(this) == JFileChooser.APPROVE_OPTION)
         {
            try
            {
               File file = fileChooser.getSelectedFile();
               PrintWriter out = new PrintWriter(file);
               //out.print() etc
               out.close();
            }
            catch (Exception e) { //ignore...
            }
         }
         else { //user cancelled...
         }
      }

Making JPopupMenu pop up

Create the JPopupMenu and add JMenuItems to it (and ActionListeners to the items) like a normal JMenu. But instead of adding it to a menubar, wrap it in a class that implements MouseAdapter, and use addMouseListener() to add the listener to the item to popup over:

rightClickMeComponent.addMouseListener(new PopupListener(popupMenu))

You create the PopupListener class - it needs to call popupMenu.show() to show the popup when the events are right. This sample PopupListener is a slightly modified version of the one from The Java Tutorial:


public class PopupListener extends MouseAdapter
{
   JPopupMenu popup;

   PopupListener(JPopupMenu popupMenu)
   {
         popup = popupMenu;
   }

   public void mousePressed(MouseEvent e)
   {
         if (e.isPopupTrigger())
             popup.show(e.getComponent(), e.getX(), e.getY());
   }

   public void mouseReleased(MouseEvent e)
   {
         if (e.isPopupTrigger())
             popup.show(e.getComponent(), e.getX(), e.getY());
   }
}

Generated Sat, 22 Oct 2011 04:10:08 +1100
Copyright © 2002-2011 Dylan Leigh.
[HTML 4.01 Transitional]