我在Jframe中有兩個JPanel。上面的面板有一個JCombobox。下面板根據上面面板中組合框的選擇,由各種組件動態填充。要添加到下面板的組件的類型和數量始終是動態的。下面的示例 -獲取JPanel中組件的值
底部JPanel:
JLabelA:JComboBox中
JLabelB:JComboBox中+的JTextField
JLabelC:JCombobox1 + JCombobox2 + JCombobox3
JLabelD:JList的
甲用戶可以在所需組件中選擇/輸入值,然後單擊提交按鈕。點擊按鈕。我需要進行自定義驗證(例如,某些組件是必需的,一些是可選的,如果是上述JLabelC,則在所有三個組合框中都選擇了值)。一旦所有的驗證通過,我需要在下面的面板中獲取用戶選擇/提供的值。請注意,下面板中組件的名稱不是固定的,所以我無法直接獲取值。一種方法是逐個遍歷下面板中的所有組件,並選取值。這看起來效率不高,因爲我需要遍歷所有,而我只需要遍歷用戶提供了一些輸入的那些。
查詢 -
1)如何才能附加驗證到組件(如我們可以在JavaScript驗證做)?
2)請提出替代方法來獲取組件的值。
在創建/佈置組件時,您能否保留對組合框的引用? – EthanB
是的,我可以。但是我看到的問題是 - 我將如何區分兩個JTextFields或JcomboBoxes?上例中給出的四個組件組合是四個「類型」,每個這樣的「類型」可以在面板中多次出現。創建每個'類型'的代碼是相同的,並被多次調用。我清楚了嗎? –