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

JPanel Help

Hello all, I'm trying to add a multiple JTextFields onto a single JPanel that has been already initialized thanks to the Design tool from the JFrame. I'm pretty sure that I already added them and I'm not getting any errors but they aren't showing up when I execute the program. my code is:

initComponents();
for (int i = 0; i < MemoryCell.length; i ++){
MemoryCell[i] = new javax.swing.JTextField();
MemoryCellLocation.add(MemoryCell[i]);
}

//MemoryCellLocation is the JPanel and MemoryCell is the JTextFields

Shigekazu
Newbie Poster
6 posts since Sep 2009
Reputation Points: 10
Solved Threads: 0
 

Have you added the panel to the JFrame? Is the JFrame set to "setVisible(true)"? Can you post the rest of the code please?

majestic0110
Nearly a Posting Virtuoso
1,328 posts since Oct 2007
Reputation Points: 256
Solved Threads: 72
 

The JPanel is on the frame, but again I made everything with the Design tool of Java, I'll post what was pre generated but I don't think that matters.


public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {
new GUI().setVisible(true);
}
});
}

private void initComponents() {

CPU_Label = new javax.swing.JLabel();
Memory_Label = new javax.swing.JLabel();
Output_Label = new javax.swing.JLabel();
Input_Label = new javax.swing.JLabel();
AC_Label = new javax.swing.JLabel();
IR_Label = new javax.swing.JLabel();
IR_Label1 = new javax.swing.JLabel();
AC_Display = new javax.swing.JTextField();
IR_Display = new javax.swing.JTextField();
Program_Counter = new javax.swing.JTextField();
MemoryCellLocation = new javax.swing.JPanel();
MenuBar = new javax.swing.JMenuBar();
File = new javax.swing.JMenu();
New = new javax.swing.JMenuItem();
Open = new javax.swing.JMenuItem();
Save = new javax.swing.JMenuItem();
SaveAs = new javax.swing.JMenuItem();
Delete = new javax.swing.JMenuItem();
Exit = new javax.swing.JMenuItem();
Edit = new javax.swing.JMenu();
Undo = new javax.swing.JMenuItem();
Cut = new javax.swing.JMenuItem();
Copy = new javax.swing.JMenuItem();
Paste = new javax.swing.JMenuItem();
Insert = new javax.swing.JMenuItem();
Clear_All = new javax.swing.JMenuItem();
Clear_Memory = new javax.swing.JMenuItem();
Clear_Input = new javax.swing.JMenuItem();
Clear_Output = new javax.swing.JMenuItem();
Clear_CPU = new javax.swing.JMenuItem();
RunMenuOption = new javax.swing.JMenu();
Run = new javax.swing.JMenuItem();
Trace = new javax.swing.JCheckBoxMenuItem();
Step = new javax.swing.JCheckBoxMenuItem();
Help = new javax.swing.JMenu();
Index = new javax.swing.JMenuItem();
ShortOpCodes = new javax.swing.JMenuItem();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("Steven Kawafuchi's SC Emulator");

CPU_Label.setFont(new java.awt.Font("Smudger LET", 0, 24));
CPU_Label.setText("CPU");

Memory_Label.setFont(new java.awt.Font("Smudger LET", 0, 24));
Memory_Label.setText("Memory");

Output_Label.setFont(new java.awt.Font("Smudger LET", 0, 24));
Output_Label.setText("Output");

Input_Label.setFont(new java.awt.Font("Smudger LET", 0, 24));
Input_Label.setText("Input");

AC_Label.setFont(new java.awt.Font("Smudger LET", 0, 24));
AC_Label.setText("AC");

IR_Label.setFont(new java.awt.Font("Smudger LET", 0, 24));
IR_Label.setText("IR");

IR_Label1.setFont(new java.awt.Font("Smudger LET", 0, 24));
IR_Label1.setText("PC");

AC_Display.setEditable(false);

IR_Display.setEditable(false);

Program_Counter.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyTyped(java.awt.event.KeyEvent evt) {
Program_CounterKeyTyped(evt);
}
});

org.jdesktop.layout.GroupLayout MemoryCellLocationLayout = new org.jdesktop.layout.GroupLayout(MemoryCellLocation);
MemoryCellLocation.setLayout(MemoryCellLocationLayout);
MemoryCellLocationLayout.setHorizontalGroup(
MemoryCellLocationLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(0, 521, Short.MAX_VALUE)
);
MemoryCellLocationLayout.setVerticalGroup(
MemoryCellLocationLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(0, 378, Short.MAX_VALUE)
);

File.setText("File");

New.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK));
New.setText("New");
New.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
NewActionPerformed(evt);
}
});
File.add(New);

Open.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_O, java.awt.event.InputEvent.CTRL_MASK));
Open.setText("Open...");
Open.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
OpenActionPerformed(evt);
}
});
File.add(Open);

Save.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F3, 0));
Save.setText("Save");
Save.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
SaveActionPerformed(evt);
}
});
File.add(Save);

SaveAs.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_S, java.awt.event.InputEvent.CTRL_MASK));
SaveAs.setText("Save As...");
SaveAs.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
SaveAsActionPerformed(evt);
}
});
File.add(SaveAs);

Delete.setText("Delete...");
Delete.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
DeleteActionPerformed(evt);
}
});
File.add(Delete);

Exit.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F4, java.awt.event.InputEvent.ALT_MASK));
Exit.setText("Exit");
Exit.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
ExitActionPerformed(evt);
}
});
File.add(Exit);

MenuBar.add(File);

Edit.setText("Edit");

Undo.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_Z, java.awt.event.InputEvent.CTRL_MASK));
Undo.setText("Undo");
Undo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
UndoActionPerformed(evt);
}
});
Edit.add(Undo);

Cut.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_X, java.awt.event.InputEvent.CTRL_MASK));
Cut.setText("Cut");
Cut.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
CutActionPerformed(evt);
}
});
Edit.add(Cut);

Copy.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.CTRL_MASK));
Copy.setText("Copy");
Copy.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
CopyActionPerformed(evt);
}
});
Edit.add(Copy);

Paste.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_V, java.awt.event.InputEvent.CTRL_MASK));
Paste.setText("Paste");
Paste.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
PasteActionPerformed(evt);
}
});
Edit.add(Paste);

Insert.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_INSERT, 0));
Insert.setText("Insert");
Insert.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
InsertActionPerformed(evt);
}
});
Edit.add(Insert);

Clear_All.setText("Clear All");
Clear_All.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
Clear_AllActionPerformed(evt);
}
});
Edit.add(Clear_All);

Clear_Memory.setText("Clear Memory");
Clear_Memory.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
Clear_MemoryActionPerformed(evt);
}
});
Edit.add(Clear_Memory);

Clear_Input.setText("Clear Input");
Clear_Input.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
Clear_InputActionPerformed(evt);
}
});
Edit.add(Clear_Input);

Clear_Output.setText("Clear Output");
Clear_Output.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
Clear_OutputActionPerformed(evt);
}
});
Edit.add(Clear_Output);

Clear_CPU.setText("Clear CPU");
Clear_CPU.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
Clear_CPUActionPerformed(evt);
}
});
Edit.add(Clear_CPU);

MenuBar.add(Edit);

RunMenuOption.setText("Run");

Run.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_R, java.awt.event.InputEvent.CTRL_MASK));
Run.setText("Run");
Run.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
RunActionPerformed(evt);
}
});
RunMenuOption.add(Run);

Trace.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_T, java.awt.event.InputEvent.CTRL_MASK));
Trace.setSelected(false);
Trace.setText("Trace");
Trace.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
TraceActionPerformed(evt);
}
});
RunMenuOption.add(Trace);

Step.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_S, java.awt.event.InputEvent.CTRL_MASK));
Step.setSelected(false);
Step.setText("Step");
Step.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
StepActionPerformed(evt);
}
});
RunMenuOption.add(Step);

MenuBar.add(RunMenuOption);

Help.setText("Help");

Index.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F1, 0));
Index.setText("Index");
Index.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
IndexActionPerformed(evt);
}
});
Help.add(Index);

ShortOpCodes.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F2, 0));
ShortOpCodes.setText("Short OpCodes");
ShortOpCodes.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
ShortOpCodesActionPerformed(evt);
}
});
Help.add(ShortOpCodes);

MenuBar.add(Help);

setJMenuBar(MenuBar);

org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.add(103, 103, 103)
.add(CPU_Label)
.add(375, 375, 375)
.add(Memory_Label))
.add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
.add(33, 33, 33)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
.add(layout.createSequentialGroup()
.add(AC_Label)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(AC_Display, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 65, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(10, 10, 10)
.add(IR_Label)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(IR_Display, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 32, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.add(layout.createSequentialGroup()
.add(Input_Label)
.add(18, 18, 18)
.add(Output_Label)))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(IR_Label1)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(Program_Counter, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 32, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(66, 66, 66)
.add(MemoryCellLocation, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.addContainerGap()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.add(10, 10, 10)
.add(Memory_Label))
.add(CPU_Label))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(MemoryCellLocation, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(layout.createSequentialGroup()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(AC_Label)
.add(IR_Label)
.add(AC_Display, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(IR_Display, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(IR_Label1)
.add(Program_Counter, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.add(98, 98, 98)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(Input_Label)
.add(Output_Label))))
.addContainerGap())
);

pack();
}//

Shigekazu
Newbie Poster
6 posts since Sep 2009
Reputation Points: 10
Solved Threads: 0
 
GUI() {
        initComponents();
    }
quuba
Posting Pro
573 posts since Nov 2008
Reputation Points: 123
Solved Threads: 106
 
GUI() {
        initComponents();
    }

that won't do anything, are you just suggesting that I get rid of my jTextFields and initialize them inside the initcomponents()????

Shigekazu
Newbie Poster
6 posts since Sep 2009
Reputation Points: 10
Solved Threads: 0
 

show me constructor of your class or indicate place where you invoke

initComponents();


inside this class

quuba
Posting Pro
573 posts since Nov 2008
Reputation Points: 123
Solved Threads: 106
 

I don't think I understand, I already showed you where I invoked it, and all of the code inside the method....

Shigekazu
Newbie Poster
6 posts since Sep 2009
Reputation Points: 10
Solved Threads: 0
 
static  JTextField[] MemoryCell = new JTextField[5];

    GUI() {
        initComponents();
        for (int i = 0; i < MemoryCell.length; i++) {
            MemoryCell[i] = new javax.swing.JTextField("any        text");//////
            MemoryCellLocation.add(MemoryCell[i]);
        }
    }
quuba
Posting Pro
573 posts since Nov 2008
Reputation Points: 123
Solved Threads: 106
 
static  JTextField[] MemoryCell = new JTextField[5];

    GUI() {
        initComponents();
        for (int i = 0; i < MemoryCell.length; i++) {
            MemoryCell[i] = new javax.swing.JTextField("any        text");//////
            MemoryCellLocation.add(MemoryCell[i]);
        }
    }

nope. that didn't do anything

Shigekazu
Newbie Poster
6 posts since Sep 2009
Reputation Points: 10
Solved Threads: 0
 

If you add components after your GUI is initialized (which it looks like you're doing) I think you need to call revalidate() or validate() on the JPanel or JFrame. If you read the revalidate method documentation it might make it clear which one needs to happen, if at all. Or you could just experiment.

BestJewSinceJC
Posting Maven
2,772 posts since Sep 2008
Reputation Points: 874
Solved Threads: 354
 

org.jdesktop.layout.GroupLayout - usage

GUI() {
        initComponents();
        for (int i = 0; i < MemoryCell.length; i++) {
            MemoryCell[i] = new javax.swing.JTextField() {

                @Override
                public Dimension getPreferredSize() {
                    return new Dimension(50, super.getPreferredSize().height);
                }
            };
            MemoryCellLocation.add(MemoryCell[i]);
        }
        pack(); // all components added then pack()
    }

!!! I forgot. I commented whole MemoryCellLocationLayout org.jdesktop.layout.

org.jdesktop.layout.GroupLayout have two groups:HorizontalGroup and VerticalGroup
- layout.setHorizontalGroup
- layout.setVerticalGroup
where same components are added to two groups: Horizontal and Vertical.

Make new PanelForm inside NetBeans, set org.jdesktop.layout.GroupLayout add some JTextFields and look to machine generated code.

I have not experience with this layout http://blogninja.com/doc/libswing-layout-java-doc/api/index.html?org/jdesktop/layout/package-tree.html

quuba
Posting Pro
573 posts since Nov 2008
Reputation Points: 123
Solved Threads: 106
 
If you add components after your GUI is initialized (which it looks like you're doing) I think you need to call revalidate() or validate() on the JPanel or JFrame. If you read the revalidate method documentation it might make it clear which one needs to happen, if at all. Or you could just experiment.


Unfortunately that didn't do anything either

Shigekazu
Newbie Poster
6 posts since Sep 2009
Reputation Points: 10
Solved Threads: 0
 

Once more: wrong usage of org.jdesktop.layout.GroupLayout

An example of JTextFieldPanel. You can extend this for your needs.
Number of items, setVisible(...), setEnabled(...), ... or write own.

Attachments shigekazu.zip (3.98KB)
quuba
Posting Pro
573 posts since Nov 2008
Reputation Points: 123
Solved Threads: 106
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You
View similar articles that have also been tagged: