954,506 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

Java Internal frames

Hi All,

I am working with Internal Frames. I used JDesktopPane and added 2 frames to it. I made one frame visible and the other was setVisible(false). This happens when I first run the program(Only first frame appearing). Now, what I want is to make the second frame visible, when I click a button on the first frame. Can you please help me out.

Thank you

mmr
Newbie Poster
5 posts since Oct 2004
Reputation Points: 10
Solved Threads: 0
 

hi everyone,
use the setVisible(true) method of theJInternalFrame class.

Richard west

freesoft_2000
Practically a Master Poster
623 posts since Jun 2004
Reputation Points: 25
Solved Threads: 10
 

Hi All,

I am working with Internal Frames. I used JDesktopPane and added 2 frames to it. I made one frame visible and the other was setVisible(false). This happens when I first run the program(Only first frame appearing). Now, what I want is to make the second frame visible, when I click a button on the first frame. Can you please help me out.

Thank you

u just add it to container of(ie,desktop pane) main frame ie;window of ur app and make it setVisible(true)
so
wer u r buton is now in main frame or in first internal frame?
if it's in main frame
i think cod will be like this
********************************************
JFrame a= new JFrame("Main Window");
JInternalFrame f1 = new JInternalFrame();
JInternalFrame f2 = new JInternalFrame();
a.setContentPane(desktopPane);
Container c = getContentPane();
now
c.add(f1);
c.add(f2);
c.add(btn)
now add actionlistener for btn
f1.setVisible(true);
f2.setVisible(false);
now in action performed of btn
add

f2.setVisible(true);
************************************
if btn in first frame the whole thing will change
please sepecify that also
if u want pls snd mails to [email]jijoy18@yahoo.com[/email]
pls feel free to ask qstns.

tigerxx
Light Poster
35 posts since Sep 2004
Reputation Points: 10
Solved Threads: 0
 

Hi tigerXX

Thanks for the reply. As you mentioned, the button is in the 1st Internal frame and there comes the problem for me.

mmr
Newbie Poster
5 posts since Oct 2004
Reputation Points: 10
Solved Threads: 0
 

then u should be adding the button to the container of the 1st internal frame
and in the actionperfromed of the button please add the code i
specified.

tigerxx
Light Poster
35 posts since Sep 2004
Reputation Points: 10
Solved Threads: 0
 

So long as you have an instance of the second internal frame in the class with the listeners it shouldn't be that hard. If worste comes to worste make the instance of the second internal frame static.
Also could you post some of your code, or explain why you're having such a hard time with this problem.

Iron_Cross
Junior Poster
117 posts since Jul 2003
Reputation Points: 46
Solved Threads: 2
 

hi mmr

i have a piece of code for u
/************************************************/
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

class Test extends JFrame implements ActionListener {

JInternalFrame f1 = new JInternalFrame("Frame1");
JInternalFrame f2 = new JInternalFrame("Frame2");
Container cont;
JButton jBtn = new JButton("Click");
public Test(){
cont = this.getContentPane();
cont.setLayout(new FlowLayout());
cont.add(f1);
cont.add(f2);
Container co = f1.getContentPane();
co.setLayout(new FlowLayout());
co.add(jBtn);
f1.setVisible(true);
f1.setBounds(0,0,100,100);
f2.setVisible(false);
f2.setBounds(100,100,50,50);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setBounds(0,0,400,400);
setVisible(true);
jBtn.addActionListener(this);
}
public void actionPerformed(ActionEvent ae){
if(ae.getSource()==jBtn){
cont.add(f2);
f2.setVisible(true);
cont.add(new JLabel("Second Frame is Visible NOW"));
}
}
public static void main(String args[]){
new Test();
}


}
/***************************************************/
try this code and send me reply
i think this is ur requirement
if not plz be more specific
best luck
plz be feel free to ask qstns
bye

tigerxx
Light Poster
35 posts since Sep 2004
Reputation Points: 10
Solved Threads: 0
 

Hi tigerXX

Thanks for the reply. That works. I used desktop pane and added 2 internal frames to it. But now I understood. Thank you.

mmr
Newbie Poster
5 posts since Oct 2004
Reputation Points: 10
Solved Threads: 0
 

Hi tigerXX

Thanks for the reply. That works. I used desktop pane and added 2 internal frames to it. But now I understood. Thank you.

Hi TigerXX,

But what happens if we use desktop pane??? How should we manage?

mmr
Newbie Poster
5 posts since Oct 2004
Reputation Points: 10
Solved Threads: 0
 

Hi TigerXX,

But what happens if we use desktop pane??? How should we manage?


u can use it bye

set
this.setContentPane(new JDesktopPane());
remaining everything as i have mentioned like above
thnkx............

tigerxx
Light Poster
35 posts since Sep 2004
Reputation Points: 10
Solved Threads: 0
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You