0
在我的節目,我有50多個文本字段和對他們有一個明確的按鈕。我想知道是否有一種方法可以遍歷它們來清除它們,而不是將每個文本字段設置爲textfield.setText(「」)。我知道這種方式可行,但我只是想知道還有什麼可能的。多的JTextField結算
感謝
在我的節目,我有50多個文本字段和對他們有一個明確的按鈕。我想知道是否有一種方法可以遍歷它們來清除它們,而不是將每個文本字段設置爲textfield.setText(「」)。我知道這種方式可行,但我只是想知道還有什麼可能的。多的JTextField結算
感謝
您可以將整個幀傳遞給函數,然後取這個範圍內的所有部件,並檢查它是否是一個文本框只是明確我
類具有靜態函數:
public class JCTest
{
public static void Clear(JInternalFrame intFrame)
{
if (intFrame == null)
return;
Container con = intFrame.getContentPane();
for (Component c : con.getComponents())
{
if (c instanceof JTextField)
{
JTextField j = (JTextField)c;
j.setText("");
}
}
}
}
稱之爲:
public class Main
{
public static void main(String[] args)
{
JInternalFrame intFrame = new JInternalFrame();
JCTest.Clear(intFrame);
}
}
或者只是做它裏面的視圖類
for (Component C : this.getComponents())
{
if (C instanceof JTextField){
((JTextField) C).setText("");
}
}
所有文本字段創建列表,只是清除它們都:
List<JTextField> fields = new ArrayList<>();
fields.add(new JTextField());
fields.add(new JTextField());
fields.add(new JTextField());
fields.forEach((a) -> a.setText(""));
創建一個列表''並遍歷它。 –
在列表中添加所有'JtextField',然後遍歷列表並清除該值。 – zombie