私はこれを回避する方法がわかりませんが、私のコードの目的はcsvファイルを反復し、ユーザーが特定の項目を検索することです。私は自分のアイテムをCSVReaderでタイプリストの文字列配列から読み込んだので、問題はありません。forループ内でボタンを押すのを待っていますか?
ユーザーがアイテムを検索すると、forループを作成して、自分のcsvファイルの行と列を繰り返し処理し、見つかったらコードを出力します。
私がしたいことは、アイテムが見つかったら、別のフレームを開き、再びユーザーがテキストフィールドを使用して入力を行います。次に、別のボタンを押して、変更を行うコードを実行するために他のforループで中断したところで続けます。 forループを1回だけ反復することができます。そうしないと、行と列の値が2回繰り返されることになります。ここで
は私のコードです:
editTigerFrame obj = new editTigerFrame();
String getLocation = obj.editLocationField.getText();
javax.swing.JButton saveButt = obj.saveEditButton;
try{
String strSearch = searchSerialField.getText();
CSVReader reader = new CSVReader(new FileReader("test.txt"), ',');
List<String[]> myEntries = reader.readAll();
reader.close();
for (int row = 0; row < myEntries.size(); row++)
{
for (int column = 0; column < myEntries.get(row).length; column++)
{
if (myEntries.get(row)[column].trim().equalsIgnoreCase(strSearch))
{
System.out.println("Found - Your item is on row: " + row + ", column: " + column);
//If serial is found, open the editTigerFrame to edit details
new editTigerFrame().setVisible(true);
//Replace with user input
//When button is pressed in other class, execute this code
System.out.println("Saved");
String newLocation = getLocation;
ボタンを他のフォームに押された後、文字列を変更するコードを実行し、コードスニペットの底部付近に見ることができるように。
for-loop内で一時停止して続行する方法はありますか?
ご協力いただきありがとうございます。何か他のものが必要な場合は、私にお知らせください。私が提供します。
ループとボタンのクリックに共通の「フラグ」を使用すると便利です。ボタンクリックハンドラで 'flag'を更新し、' break'をしたいと思う最も内側のループに同じ 'flag'を使います。新しい 'Thread'を使うと効果的です。 – Arvind