gpt4 book ai didi

css - GWT CellList ... 单击元素时,先前单击的元素将失去其样式

转载 作者:行者123 更新时间:2023-11-28 12:59:10 24 4
gpt4 key购买 nike

我有 GWT CellList,在通过 DataProvider 添加元素后,我使用以下代码为每个元素添加样式。

members... we can styling if a matched item is also in members
matched... passed in as a MetaJsArray<Contact>

CellList<Contact> list = getView().getResults();
for (int i=0; i<matched.length(); i++) {
if (members.isExistingEntry(matched.get(i))) {
list.getRowElement(i).addClassName("RED");
}
}

此代码一直有效,直到...我单击列表中的元素。

点击每个元素都会调用 onCellPreview(),但之前点击的元素会失去其“RED”样式。

我需要添加不同的样式吗?或者如何阻止“RED”的丢失?

最佳答案

我猜这与 GWT 生成 javascript 的方式有关。当您手动设置电池加载时一切正常。当您选择它时,javascript 将对象更改为使用选定的 CSS,当您取消选择它时,CSS 将更改为单元格的默认 GWT CSS 样式。

我唯一能想到的方法是在选择时有一个处理程序。当您选择一个元素时:

selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
public void onSelectionChange(SelectionChangeEvent event) {
// get item last selected
// check if needs re styling
// restyle
// do things with the new selected object
}
});

通过单元格列表添加另一个检查并标记未标记的单元格。这种方式可能效率低下,但这是我能想到的避免你的问题的一种方式。希望对您有所帮助。

关于css - GWT CellList ... 单击元素时,先前单击的元素将失去其样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16296268/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com