Results 1 to 5 of 5
Thread: Jframe In Jtable cell
- 06-20-2008, 07:56 AM #1
Member
- Join Date
- Jun 2008
- Posts
- 2
- Rep Power
- 0
- 06-20-2008, 08:28 AM #2
- Join Date
- Jul 2007
- Location
- Colombo, Sri Lanka
- Posts
- 11,374
- Blog Entries
- 1
- Rep Power
- 18
It's better try something first yourself. We don't take homeworks for others. Try something my friend. If you stuck with some, ask here. :)
-
Nojust send the code ..
That kind of statement ruffles my feathers. As noted above it is better for you to try yourself. Also, if this component will be seen within the JTable it can't be a JFrame, a JDialog or any other root container. It is ok being a JPanel however.
- 06-21-2008, 06:14 AM #4
Member
- Join Date
- Jun 2008
- Posts
- 2
- Rep Power
- 0
hai friends,
I am really sorry for sending like that...(Just send the code)...Dont mistake me Past 2 weeks I started working in java.Just i tried something,here the code of my program....(this also i have taken from net and editted according to my need)....
I have attached only my main class here....
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.KeyEvent;
import javax.swing.AbstractAction;
import javax.swing.Action;
import javax.swing.BorderFactory;
import javax.swing.DefaultCellEditor;
import javax.swing.InputMap;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.KeyStroke;
public class Test extends JFrame {
JTable table;
public Test() {
table = new JTable(15, 5) {
public boolean isCellEditable(int row, int column) {
return column % 2 == 0;
// return true;
}
public void changeSelection(final int row, final int column,
boolean toggle, boolean extend) {
super.changeSelection(row, column, toggle, extend);
if (editCellAt(row, column)) {
getEditorComponent().requestFocusInWindow();
}
}
};
table.setPreferredScrollableViewportSize(table.get PreferredSize());
table.putClientProperty("terminateEditOnFocusLost" , Boolean.TRUE);
TextAreaRenderer textAreaRenderer = new TextAreaRenderer();
TextAreaEditor textEditor = new TextAreaEditor();
table.getColumnModel().getColumn(4).setCellRendere r(textAreaRenderer);
table.getColumnModel().getColumn(4).setCellEditor( textEditor);
JTextField tf = new JTextField();
tf.setBorder(BorderFactory.createEmptyBorder());
table.setDefaultEditor(Object.class, new DefaultCellEditor((tf)));
JScrollPane scrollPane = new JScrollPane(table);
DefaultCellEditor dce = (DefaultCellEditor) table
.getDefaultEditor(Object.class);
dce.setClickCountToStart(1);
getContentPane().add(scrollPane);
InputMap im = table
.getInputMap(JTable.WHEN_ANCESTOR_OF_FOCUSED_COMPO NENT);
// Have the enter key work the same as the tab key
KeyStroke tab = KeyStroke.getKeyStroke(KeyEvent.VK_TAB, 0);
KeyStroke enter = KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0);
im.put(enter, im.get(tab));
// Disable the right arrow key
KeyStroke right = KeyStroke.getKeyStroke(KeyEvent.VK_RIGHT, 0);
im.put(right, "none");
// Override the default tab behaviour
// Tab to the next editable cell. When no editable cells goto next cell.
final Action oldTabAction = table.getActionMap().get(im.get(tab));
Action tabAction = new AbstractAction() {
public void actionPerformed(ActionEvent e) {
oldTabAction.actionPerformed(e);
JTable table = (JTable) e.getSource();
int rowCount = table.getRowCount();
int columnCount = table.getColumnCount();
int row = table.getSelectedRow();
int column = table.getSelectedColumn();
while (!table.isCellEditable(row, column)) {
column += 1;
if (column == columnCount) {
column = 0;
row += 1;
}
if (row == rowCount) {
row = 0;
}
// Back to where we started, get out.
if (row == table.getSelectedRow()
&& column == table.getSelectedColumn()) {
break;
}
}
table.changeSelection(row, column, false, false);
JFrame frame1 = new JFrame("MOUSELISTENER FRAME");
Object rows[][] = { { "one", "ichi - \u4E00" },
{ "two", "ni - \u4E8C" }, { "three", "san - \u4E09" },
{ "four", "shi - \u56DB" }, { "five", "go - \u4E94" },
{ "six", "roku - \u516D" }, { "seven", "shichi - \u4E03" },
{ "eight", "hachi - \u516B" }, { "nine", "kyu - \u4E5D" },
{ "ten", "ju - \u5341" } };
Object headers[] = { "English", "Japanese" };
JTable table2= new JTable(rows,headers);
frame1.getContentPane().add(table2, BorderLayout.CENTER);
frame1.setSize(400, 400);
frame1.setVisible(true);
// frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLO SE);
}
};
table.getActionMap().put(im.get(tab), tabAction);
table.setSurrendersFocusOnKeystroke(true);
}
public static void main(String[] args) {
Test frame = new Test();
frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}
with regards,
clarion
- 06-23-2008, 04:42 AM #5
- Join Date
- Jul 2007
- Location
- Colombo, Sri Lanka
- Posts
- 11,374
- Blog Entries
- 1
- Rep Power
- 18
First check that your InputMap is correctly define. Seems to me, on your code it's declaration is wrong.
Similar Threads
-
Jtable duplicates through Hashtable (JTable condition problem) my assignment plz help
By salmanpirzada1 in forum Advanced JavaReplies: 2Last Post: 05-15-2008, 10:15 AM -
Limiting the capacity of a cell of JTable
By rameshraj in forum Advanced JavaReplies: 0Last Post: 03-24-2008, 02:20 PM -
Select specific cell
By Echilon in forum New To JavaReplies: 1Last Post: 01-01-2008, 07:47 AM -
How can i set the table's column dragable/movable false and cell editable
By johnt in forum AWT / SwingReplies: 4Last Post: 05-19-2007, 11:15 AM


LinkBack URL
About LinkBacks
Reply With Quote
Bookmarks