我使用JLabels編寫了一種購物清單,我有一個可以從列表中刪除項目的按鈕。我編寫了一些代碼,以便縮小差距,並且所有的JLabel都向上移動,直到所有的空間都被填滿。問題是我必須按下按鈕才能移動每個JLabel。我想知道是否有人能告訴我如何使用while循環在循環中運行代碼,直到什麼也沒有發生(這將意味着不存在任何差距,一切都在頂部)如何讓循環繼續,直到沒有任何事情發生?
String remove1 = ListSlot1.getText();
String remove2 = ListSlot2.getText();
String remove3 = ListSlot3.getText();
if(remove1=="")
{
ListSlot1.setText(ListSlot2.getText());
ListSlot2.setText("");
}
if(remove2=="")
{
ListSlot2.setText(ListSlot3.getText());
ListSlot3.setText("");
}
if(remove3=="")
{
ListSlot3.setText(ListSlot4.getText());
ListSlot4.setText("");
}
我真的不確定你想要做什麼,但也許你想要使用的是一個JList。考慮澄清你的問題。 –
您應該使用像JList這樣的列表控件來管理實際列表,而不是通過繪製一堆標籤並手動移動它們來模擬它們。 *不要重新發明輪子。* – ADTC
我不知道如何運行一段時間,當沒有任何變化時它停下來。我的循環只是不斷地用「」代替「」,它會永遠做到這一點,我不知道如何阻止它 – reca117