javax.swing.JTable#getEditorComponent ( )源码实例Demo

下面列出了javax.swing.JTable#getEditorComponent ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

@Test
public void testEditFieldOnComponent() throws Exception {
	init(complexStructure, pgmTestCat);

	setSelection(new int[] { 3 });
	assertTrue(!model.isEditingField());
	invoke(editFieldAction);
	JTable table = getTable();
	Container component = (Container) table.getEditorComponent();
	assertTrue(model.isEditingField());
	assertEquals(3, model.getRow());
	assertEquals(model.getDataTypeColumn(), model.getColumn());

	JTextField textField = findComponent(component, JTextField.class);
	triggerText(textField, "Ab\b\b\t");

	assertTrue(model.isEditingField());
	assertEquals(3, model.getRow());

	escape();// Remove the choose data type dialog.
	assertNotEditingField();
}
 
源代码2 项目: CodenameOne   文件: PropertySheetTable.java
public void actionPerformed(ActionEvent e) {
  JTable table = (JTable)e.getSource();
  if (!table.hasFocus()) {
    CellEditor cellEditor = table.getCellEditor();
    if (cellEditor != null && !cellEditor.stopCellEditing()) { return; }
    table.requestFocus();
    return;
  }
  ListSelectionModel rsm = table.getSelectionModel();
  int anchorRow = rsm.getAnchorSelectionIndex();
  table.editCellAt(anchorRow, PropertySheetTableModel.VALUE_COLUMN);
  Component editorComp = table.getEditorComponent();
  if (editorComp != null) {
    editorComp.requestFocus();
  }
}
 
源代码3 项目: ghidra   文件: MemoryMapPluginTest.java
private void editNameCell(final JTable table, String name) {
	final int nameColumn = MemoryMapModel.NAME;
	final int namedRow = getNamedRow(table, nameColumn, name);

	runSwing(() -> {
		table.getSelectionModel().setSelectionInterval(namedRow, namedRow);
		table.scrollRectToVisible(table.getCellRect(namedRow, nameColumn, true));
	});

	Rectangle rect = table.getCellRect(namedRow, nameColumn, true);
	Point tablePoint = table.getLocationOnScreen();
	final int x = tablePoint.x + rect.x + (rect.width / 2);
	final int y = tablePoint.y + rect.y + (rect.height / 2);
	runSwing(() -> {
		MouseEvent editMouseEvent = new MouseEvent(table, MouseEvent.MOUSE_CLICKED,
			System.currentTimeMillis(), 0, x, y, 2, false);
		table.editCellAt(namedRow, nameColumn, editMouseEvent);
	});

	assertEquals(true, table.isEditing());

	Component editorComponent = table.getEditorComponent();
	assertNotNull(editorComponent);
	assertTrue(editorComponent instanceof JTextField);
	final JTextField editorField = (JTextField) editorComponent;
	editorField.selectAll();
	runSwing(() -> editorField.requestFocus());
	waitForPostedSwingRunnables();

	triggerText(editorField, ".myText\n");

	assertEquals(".myText", table.getModel().getValueAt(namedRow, nameColumn));
}
 
@Test
public void testEditFieldSetBitfieldDataType() throws Exception {
	init(complexStructure, pgmTestCat);

	DataTypeComponent dtc = model.getComponent(3);
	assertNotNull(dtc);
	assertTrue(!dtc.isBitFieldComponent());

	setSelection(new int[] { 3 });
	assertTrue(!model.isEditingField());
	invoke(editFieldAction);
	JTable table = getTable();
	Container component = (Container) table.getEditorComponent();
	assertTrue(model.isEditingField());
	assertEquals(3, model.getRow());
	assertEquals(model.getDataTypeColumn(), model.getColumn());

	JTextField textField = findComponent(component, JTextField.class);
	triggerText(textField, "char:2\n");

	waitForSwing();

	assertTrue(!model.isEditingField());
	assertEquals(3, model.getRow());
	assertNotEditingField();

	dtc = model.getComponent(3);
	assertNotNull(dtc);
	assertTrue(dtc.isBitFieldComponent());
}
 
 方法所在类
 同类方法