?
Solved

JMenu and invoking close the window

Posted on 2003-11-26
11
Medium Priority
?
619 Views
Last Modified: 2010-03-31
I created JFrame in the applet, but JMenu is on applet.(It supposed to be on JFrame.)
The following is my code segment.
------------------------------------------
public class LibraryApplet extends JApplet implements ActionListener{
      …
      …
  public void init() {
  myFrame = new JFrame();
  contentPane = myFrame.getContentPane();
  layout = new GridBagLayout();
  contentPane.setLayout(layout);
  constraints = new GridBagConstraints();
       …
       …
   JMenu fileMenu = new JMenu("File");
   JMenuItem exitItem = new JMenuItem("Exit");
   fileMenu.add(exitItem);
    JMenuBar bar = new JMenuBar();
    setJMenuBar(bar);
    bar.add(fileMenu);

    myFrame.pack() ;
  }
--------------------------------------
Another question is that top-level window(JFrame) has a File menu containing a menu item "Exit". When "Exit" is invoked the application will close the window (the user sees an empty applet page with just the title and header)

 How do I implement the above "Exit" behavior?

Thank you for help
0
Comment
Question by:dkim18
  • 5
  • 4
  • 2
11 Comments
 
LVL 9

Assisted Solution

by:yongsing
yongsing earned 200 total points
ID: 9830114
Change

setJMenuBar(bar);

to

myFrame.setJMenuBar(bar);
0
 
LVL 9

Expert Comment

by:yongsing
ID: 9830116
>> How do I implement the above "Exit" behavior?

How do you want the "Exit" behaviour to be like?
0
 

Author Comment

by:dkim18
ID: 9830138
When "Exit" is invoked the application will close the window (the user sees an empty applet page with just the title and header)
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
LVL 92

Expert Comment

by:objects
ID: 9830154
myFrame.hide();
0
 
LVL 9

Expert Comment

by:yongsing
ID: 9830163
Add this to your code and see if it helps:

myFrame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
0
 
LVL 9

Expert Comment

by:yongsing
ID: 9830170
Ignore my last comment. objects is right. You need to call JFrame.hide(). You also need to add action listener to your exit menu item:

exitItem.addActionListener(
  new ActionListener() {
    public void actionPerformed(ActionEvent e) {
      ((JFrame)e.getSource()).hide();
    }
  }
);
0
 
LVL 92

Expert Comment

by:objects
ID: 9830171
The window shouldn't be disposed cause the next time the applet is loaded the same window is used.
0
 
LVL 92

Accepted Solution

by:
objects earned 800 total points
ID: 9830176
shouldn't that be:

exitItem.addActionListener(
  new ActionListener() {
    public void actionPerformed(ActionEvent e) {
      myFrame.hide();
    }
  }
);
0
 
LVL 9

Expert Comment

by:yongsing
ID: 9830198
Oh ya, that was a mistake. :-)
0
 

Author Comment

by:dkim18
ID: 9832697
objects
superb!
0
 
LVL 92

Expert Comment

by:objects
ID: 9833720
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Java Flight Recorder and Java Mission Control together create a complete tool chain to continuously collect low level and detailed runtime information enabling after-the-fact incident analysis. Java Flight Recorder is a profiling and event collectio…
Java functions are among the best things for programmers to work with as Java sites can be very easy to read and prepare. Java especially simplifies many processes in the coding industry as it helps integrate many forms of technology and different d…
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …
Suggested Courses
Course of the Month9 days, 13 hours left to enroll

609 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question