Can't find getContentPane() in Frame

G

Gil

trying to compile an example I found on the Sun website but I get an
error.

Compiler says can't find getContentPane() in class java.awt.Frame


Here's the example I was trying to compile :

/* * TabbedPaneDemo.java is a 1.4 example that requires one additional
file: * images/middle.gif. */
import javax.swing.JTabbedPane;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JComponent;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.KeyEvent;

public class TabbedPaneDemo extends JPanel
{
public TabbedPaneDemo() {
super(new GridLayout(1, 1));
JTabbedPane tabbedPane = new JTabbedPane();
ImageIcon icon = createImageIcon("images/middle.gif");
JComponent panel1 = makeTextPanel("Panel #1");
tabbedPane.addTab("Tab 1", icon, panel1, "Does
nothing");
tabbedPane.setMnemonicAt(0, KeyEvent.VK_1);
JComponent panel2 = makeTextPanel("Panel #2");
tabbedPane.addTab("Tab 2", icon, panel2, "Does twice as
much nothing");
tabbedPane.setMnemonicAt(1, KeyEvent.VK_2);
JComponent panel3 = makeTextPanel("Panel #3");
tabbedPane.addTab("Tab 3", icon, panel3, "Still does
nothing");
tabbedPane.setMnemonicAt(2, KeyEvent.VK_3);
JComponent panel4 = makeTextPanel( "Panel #4 (has a
preferred size of 410 x 50).");
panel4.setPreferredSize(new Dimension(410, 50));
tabbedPane.addTab("Tab 4", icon, panel4, "Does nothing
at all");
tabbedPane.setMnemonicAt(3, KeyEvent.VK_4); //Add the
tabbed pane to this panel.
add(tabbedPane);
//Uncomment the following line to use scrolling tabs.
//tabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
}

protected JComponent makeTextPanel(String text)
{
JPanel panel = new JPanel(false);
JLabel filler = new JLabel(text);
filler.setHorizontalAlignment(JLabel.CENTER);
panel.setLayout(new GridLayout(1, 1));
panel.add(filler); return panel;
} /** Returns an ImageIcon, or null if the path was
invalid. */

protected static ImageIcon createImageIcon(String path)
{
java.net.URL imgURL =
TabbedPaneDemo.class.getResource(path);
if (imgURL != null)
{
return new ImageIcon(imgURL);
} else {
System.err.println("Couldn't find file: " + path);
return null;
}
} /** * Create the GUI and show it. For thread safety, *
this method should be invoked from the * event-dispatching thread. */

private static void createAndShowGUI()
{
//Make sure we have nice window decorations.
JFrame.setDefaultLookAndFeelDecorated(true);

//Create and set up the window.
JFrame frame = new JFrame("TabbedPaneDemo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Create and set up the content pane.
JComponent newContentPane = new TabbedPaneDemo();
newContentPane.setOpaque(true);
//content panes must be opaque
frame.getContentPane().add(new TabbedPaneDemo(),
BorderLayout.CENTER);
//Display the window.
frame.pack();
frame.setVisible(true);
}

public static void main(String[] args)
{
//Schedule a job for the event-dispatching thread:
//creating and showing this application's GUI.
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() { createAndShowGUI(); } }); } }


Found the example here :

http://java.sun.com/docs/books/tutorial/uiswing/components/example-1dot4/TabbedPaneDemo.java
 
R

Ryan Stewart

Gil said:
trying to compile an example I found on the Sun website but I get an
error.

Compiler says can't find getContentPane() in class java.awt.Frame

Here's the example I was trying to compile :
[...]
That class is not the source of your problem. It doesn't even have a
java.awt.Frame in it.
 
A

Ann

Gil said:
trying to compile an example I found on the Sun website but I get an
error.

Compiler says can't find getContentPane() in class java.awt.Frame


Here's the example I was trying to compile :

/* * TabbedPaneDemo.java is a 1.4 example that requires one additional
file: * images/middle.gif. */
import javax.swing.JTabbedPane;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JComponent;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.KeyEvent;

Do you need an asterisk?
 
R

Ryan Stewart

Ann said:
file: * images/middle.gif. */
[...]
Do you need an asterisk?
If you mean the first one in that line there, it's inside a comment and
irrelevant. If you mean does he need to import java.awt.*, that won't help
either.
 
A

Ann

/* * TabbedPaneDemo.java is a 1.4 example that requires one additional
file: * images/middle.gif. */
import javax.swing.JTabbedPane;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JComponent;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.KeyEvent;
[...]
file: * images/middle.gif. */
[...]
Do you need an asterisk?
If you mean the first one in that line there, it's inside a comment and
irrelevant. If you mean does he need to import java.awt.*, that won't help
either.

I was referring to
import javax.swing.JFrame; ==> import javax.swing.JFrame.*;
-------------------------------
Class JFrame
java.lang.Object
|
+--java.awt.Component
|
+--java.awt.Container
|
+--java.awt.Window
|
+--java.awt.Frame
|
+--javax.swing.JFrame
 
A

Ann

Ryan Stewart said:
[...]
I was referring to
import javax.swing.JFrame; ==> import javax.swing.JFrame.*;
[...]
What do you hope to accomplish with that?

I thought you wanted to know the location of the method you mentioned,
so I thought I was telling you where it is. Maybe I don't understand
what you want so I give up now.
 
R

Ryan Stewart

Ann said:
I thought you wanted to know the location of the method you mentioned,
so I thought I was telling you where it is. Maybe I don't understand
what you want so I give up now.
Okay, first you don't import instance members. Second, the original error
indicated that the method was being invoked on a Frame, not on a JFrame. We
still haven't heard back from the OP, so I wonder if he realized he didn't post
the right class or something.
 
A

Ann

Ryan Stewart said:
Okay, first you don't import instance members. Second, the original error
indicated that the method was being invoked on a Frame, not on a JFrame. We
still haven't heard back from the OP, so I wonder if he realized he didn't post
the right class or something.
ok
 
A

Ann

Ryan Stewart said:
Okay, first you don't import instance members. Second, the original error
indicated that the method was being invoked on a Frame, not on a JFrame. We
still haven't heard back from the OP, so I wonder if he realized he didn't post
the right class or something.
I still give up.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,731
Messages
2,569,432
Members
44,832
Latest member
GlennSmall

Latest Threads

Top