> Problemet er nok nærmere at TabbedPanel objektet ikke har noget
"mainFrame"
> felt.
> Hvor kender TabbedPanel mainFrame fra? Hvis du viser os koden, bliver det
nok
> lidt nemmere at hjælpe..
>
> Ulrik Magnusson
Jeg ved ikke hvor meget du skal bruge, men jeg håber det her hjælper
Hoved klassen, her laver jeg en instans af UserInterface (userInterface).
public class NetworkSimulation
{
public static void main (String[] args)
{
try
{
UIManager.setLookAndFeel(
//UIManager.getSystemLookAndFeelClassName());
UIManager.getCrossPlatformLookAndFeelClassName());
} //try
catch (Exception e)
{
System.err.println("Can't set look and feel: " + e);
} //catch
UserInterface userInterface = new UserInterface();
userInterface.show();
JFrame fileChooser = new FileChooser();
fileChooser.show();
}
}
Klassen UserInterface indeholder den overordnede brugergrænseflade, her er
variablen maxConnections og metoden getMaxConnections():
public class UserInterface extends JFrame
{
private String connectionDefault;
private String nodeDefault;
private int connectionInteger;
private int nodeInteger;
private int maxConnections = 100;
public UserInterface ()
{
super("Simulation of networktrafic");
setBounds(150,100,500,400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
...... her indsættes menuer og værktøjslinier ind
/** Creating TabbedPane */
TabbedPanel tp = new TabbedPanel();
JScrollPane scrollPanel1 = new JScrollPane(tp.panel1(),
ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
JScrollPane scrollPanel2 = new JScrollPane(tp.panel2(),
ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
JScrollPane scrollPanel3 = new JScrollPane(tp.panel3(),
ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
JTabbedPane tabbedPane = new JTabbedPane();
tabbedPane.addTab("Adjust connections", scrollPanel1);
tabbedPane.addTab("Adjust nodes", scrollPanel2);
tabbedPane.addTab("Simulation", scrollPanel3);
......her indsættes filbrowser, dialogbokse og lignende
/***************************************
Method getMaxConnections
@return maxConnections
***************************************/
public int getMaxConnections()
{
return maxConnections;
}
Klassen TabbedPanel, det er her jeg gerne vil hente variablen maxConnections
ind vha. getMaxConnections():
public class TabbedPanel extends JFrame
{
UserInterface gui = new UserInterface();
JLabel[] connection;
int maxcon = gui.getMaxConnections();
JPanel panel1 = new JPanel();
JPanel panel2 = new JPanel();
JPanel panel3 = new JPanel();
public TabbedPanel ()
{
..... her sker i masse uinteressante ting
Efter at jeg sendte det første indlæg ind har jeg prøvet at lave en instans
af UserInterface i klassen TabbedPanel (gui). Programmet compiler godt nok,
men når jeg prøver at kører det viser den følgende fejl:
UIDefaults.getUI() failed: createUI() failed for
javax.swing.JToolBar[,0,0,0x0,invalid,layout=javax.swing.BoxLayout,alignment
X=null,alignmentY=null,border=,flags=0,maximumSize=,minimumSize=,preferredSi
ze=,floatable=true,margin=,orientation=HORIZONTAL,paintBorder=true]
java.lang.reflect.InvocationTargetException
java.lang.Error
at javax.swing.UIDefaults.getUIError(UIDefaults.java:392)
at javax.swing.UIDefaults.getUI(UIDefaults.java:438)
at javax.swing.UIManager.getUI(UIManager.java:566)
at javax.swing.JToolBar.updateUI(JToolBar.java:182)
at javax.swing.JToolBar.<init>(JToolBar.java:148)
at javax.swing.JToolBar.<init>(JToolBar.java:98)
at javax.swing.JToolBar.<init>(JToolBar.java:86)
at UserInterface.<init>(UserInterface.java:89)
at TabbedPanel.<init>(TabbedPanel.java:13)
at UserInterface.<init>(UserInterface.java:98)
at TabbedPanel.<init>(TabbedPanel.java:13)
at UserI
|