我正在使用GWT。按鈕列表清單是空的
由於我有一個SQL數據庫和我的查詢結果集大小是未知的我認爲這將有助於使用列表。
其實我有一個按鈕列表和第二個列表按鈕列表。
原因是因爲我有一個存儲組的表和一個存儲實際數據的表。結果中的兩個都應該是按鈕。
通過單擊組按鈕,我的佈局充滿了組按鈕之間的數據按鈕。
現在我的數據庫連接沒有準備好使用,所以我寫了一個函數,用假數據填充我的列表。同樣的組。
public void fakeGroupData() {
// Group index 0
btnGroupList.add(new Button("Group a"));
// Group index 1
btnGroupList.add(new Button("Group b"));
...
}
public void fakeData() {
// Group index 0
btnDataList.add(new Button("Data 1.1"));
btnDataList.add(new Button("Data 1.2"));
btnDataList.add(new Button("Data 1.3"));
btnDataListList.add(btnDataList);
btnDataList.clear();
// Group index 1
btnDataList.add(...
}
聲明看起來像這樣
List<Button> btnGroupList = new ArrayList<Button>();
List<List<Button>> btnDataListList = new ArrayList<List<Button>>();
List<Button> btnDataList = new ArrayList<Button>();
當試圖讓ListList的ButtonList出現錯誤。
int grpIndex = Panel.getWidgetIndex(grpBtn);
// grpBtn is equal to (Button)event.getSource() called by btnGroup ClickHandler
btnDataList.clear()
btnDataList = btnDataListList.get(grpIndex);
int loopEnd = btnDataList.size() - 1;
for (int i = 0; i<=loopEnd; i++) {...
「loopEnd」包含「-1」,並沒有任何反應:(我想在這裏調試,一切似乎確定。 「grpIndex」有正確的索引,以便在右邊的列表被加載。 但爲什麼它是空的?當debuggin的fakeData功能日食顯示了ButtonList大小合適。
希望你能幫助我:)
代替填充假數據,怎麼樣,如果你這樣做,當你知道數據庫連接已準備就緒?閱讀關於多線程,併發,同步,觀察者模式 – gerrytan