Java 如何确保用户在正确的表格列中输入数据(除了数字格式和大小限制)?

Java 如何确保用户在正确的表格列中输入数据(除了数字格式和大小限制)?,java,swing,jtable,tablecolumn,Java,Swing,Jtable,Tablecolumn,我正在寻找一些用户界面设计帮助。我有一个JTable,它有4列。因此,列从左到右排列:椅子高度、椅子价格、桌子高度、桌子价格 我可以通过设置输入大小和小数位数的限制来确保用户不会在价格列中输入高度。但是,“椅子高度”列中的值与“桌子高度”列中的值非常相似 用户一次获得所有4个测量值。所以有时候他们会把所有的椅子尺寸都放在表格的列中,反之亦然。我对界面设计有点陌生。以前有人处理过这个问题吗?最佳做法是什么?警告标签,彩色编码我尝试过的列,我并不激动,等等?你知道,我昨天刚刚用javascript处

我正在寻找一些用户界面设计帮助。我有一个JTable,它有4列。因此,列从左到右排列:椅子高度、椅子价格、桌子高度、桌子价格

我可以通过设置输入大小和小数位数的限制来确保用户不会在价格列中输入高度。但是,“椅子高度”列中的值与“桌子高度”列中的值非常相似


用户一次获得所有4个测量值。所以有时候他们会把所有的椅子尺寸都放在表格的列中,反之亦然。我对界面设计有点陌生。以前有人处理过这个问题吗?最佳做法是什么?警告标签,彩色编码我尝试过的列,我并不激动,等等?

你知道,我昨天刚刚用javascript处理了这个问题。有两种方法可以处理,但一种是通过智能异常处理。下面的例子同样是Javascript,抱歉是事件处理之后,点击一个按钮弹出一个对话框窗口,以获得一个整数月数。我是这样处理的

try {
  var months = parseInt(window.prompt("Enter number of previous months to include", ""));
  this.value = months;
  //alert(document.getElementById('olderChanges').value);
} catch (ex) {
  alert('Invalid Number');
}
希望这能给你一些启示

最佳做法是什么

创建数据输入表单

您不需要让用户填写JTable,而是创建一个如下所示的条目表单

Chair Height: _________________     Chair Price: _____________
Table Height: _________________     Table Price: _____________

您可以使用JLabels和JTextFields创建此数据输入表单。您将使用GridBagLayout来对齐标签和字段。

JSpinner或JFormattedTextField作为TableCellEditorMaybe如果用户能够更改列的顺序,他们可以根据他们习惯的顺序更自然地输入值?异常处理在这里绝对重要。谢谢谢谢这基本上证实了我应该有一个输入对话框弹出时,他们双击一行。这样一来,数据就被清楚地分开了,而不是试图在列标题上查找。