首先,大家好。我是新来的,我刚刚开始学习 gwt。关于 stockwatch 示例,我不明白一件事。首先,有添加库存方法,将新库存添加到列表中。在该方法中,我们还添加了删除按钮并将侦听器附加到它。我的问题是,如何设置 indexOf attr,当您在添加新股票时不输入该部分代码时,您只有在单击删除按钮时才输入该部分。但是这段代码有效,我找不到解释为什么..我试图调试应用程序,但仍然无法理解。对不起,我的英语不好。
private void addStock()
{
final String symbol = newSymbolTextBox.getText().toUpperCase().trim();
//validaciju vrsimo upotrebom regularnih izraza
if(symbol.matches("[0-9A-Z]"))
{
Window.alert("'" + symbol + "' is not a valid symbol.");
newSymbolTextBox.selectAll();
return;
}
newSymbolTextBox.setText("");
if(stocks.contains(symbol))
{
return;
}
int row = stocksFlexTable.getRowCount();
stocks.add(symbol);
stocksFlexTable.setText(row, 0, symbol);
Button removeStockButton = new Button("x");
removeStockButton.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
int indexOf = stocks.indexOf(symbol);
stocks.remove(indexOf);
stocksFlexTable.removeRow(indexOf + 1);
}
});
stocksFlexTable.setWidget(row, 3, removeStockButton);
refreshWatchList();
}