我正致力于GWT CellTree上的搜索功能。
我有一个4级的cellTree。即,Root-> Session-> Uproc-> Batch。
我需要做的是,当我从数据库中获取搜索到的节点及其父节点时,我需要扩展其父节点并突出显示该节点。
我能够扩展父节点但是如何突出显示搜索到的节点?
请帮我解决这个问题。
答案 0 :(得分:0)
最简单的方法是在SelectionModel
中选择对象。
如果那不是您想要的,而您只想要其他类型的突出显示,那就太棘手了:您必须以某种方式与您的Cell
沟通,必须使用突出显示的状态绘制特定值,并且然后重新绘制单元格
第一部分取决于您如何构建代码;对于第二部分,您必须处理TreeViewModel.NodeInfo
实例(或者如果您在其TreeViewModel.DefaultNodeInfo
上使用AbstractDataProvider
)来处理父突出显示的节点,以便您可以触发子列表的重绘(突出显示的项目所在的位置)。这又取决于你是如何完成的,但是你必须以某种方式调用HasData
(代表孩子们的列表)setRowData
,传递与已经显示的完全相同的数据(但它足以触发重绘,因此Cell
将为项目生成突出显示状态。
答案 1 :(得分:-1)
你可以试试这个:
您可以通过给它css突出显示搜索到的节点。 这是css:
.selected_tree_node {
font-weight: bold;
}
将此css应用于您的节点:
yourNode.setStyleName("selected_tree_node");