14 个解决方案
#1
利用线程异步处理,这样会好些,但是lz为啥一定要在Jtree加载时就弄那么大的数据呢
#2
滚动的时候在加载。
#3
分段触发加载
#4
回复1楼:
如何进行线程异步处理?
本身数据量就很大,而且用JTree显示比较直观些。大家还有没有好办法。
如何进行线程异步处理?
本身数据量就很大,而且用JTree显示比较直观些。大家还有没有好办法。
#5
回复2楼3楼:
不能分段触发,因为我们实现的这个Tree还有搜索功能,可以搜索Tree中的任意节点。所以必须初始化的时候就生成好。
不能分段触发,因为我们实现的这个Tree还有搜索功能,可以搜索Tree中的任意节点。所以必须初始化的时候就生成好。
#6
既然有搜索,你必然要有一个完整的数据模型
但是你没必要把这个完整的数据模型直接对应到显示用的个JTree上
你可以搜索的时候在那个完整的数据模型上搜索
搜到之后,再把这个节点及其所有父节点加载到这个JTree上
但是你没必要把这个完整的数据模型直接对应到显示用的个JTree上
你可以搜索的时候在那个完整的数据模型上搜索
搜到之后,再把这个节点及其所有父节点加载到这个JTree上
#7
我想到的是,LZ是否可以使用分次加载的策略
但是,在用户搜索的时候,不是在树上搜索,而是在数据库中搜索
然后反查树节点的所有子节点。
然后再把数据展示到树上。
但是,在用户搜索的时候,不是在树上搜索,而是在数据库中搜索
然后反查树节点的所有子节点。
然后再把数据展示到树上。
#8
这个想法有点意思。
#9
每次点击只加载它的子节点
#10
数据量多大?
用多线程加载可以考虑一下,每一个一级子节点及其子孙节点用一个线程来处理,可以减少很多时间。搜索功能和加载方式无关,因为搜索也得等tree绘制完成之后才能进行。
用多线程加载可以考虑一下,每一个一级子节点及其子孙节点用一个线程来处理,可以减少很多时间。搜索功能和加载方式无关,因为搜索也得等tree绘制完成之后才能进行。
#11
这个可以有,我有个项目就是如此.
Tree中所有节点均保存在xml中,搜索是搜的xml而不是直接Tree控件,搜到节点后再加载.
#12
大家的回答都非常厉害,但是对于需求还是有些偏差,比如用户是希望既可以在树中选择节点,又可以从搜索框中搜索节点的,如果使用了6楼朋友的方案,就会对用户主动在树上选择节点造成影响的。不过还是感谢大家的积极回复,多谢。
#13
不过,貌似7楼的想法还是可以试试的,稍后回复大家测试结果
#14
这个为什么会影响在树上选择节点呢? 搜索用完整的数据模型,主动选择节点的话就用户点到哪加载到哪.
#1
利用线程异步处理,这样会好些,但是lz为啥一定要在Jtree加载时就弄那么大的数据呢
#2
滚动的时候在加载。
#3
分段触发加载
#4
回复1楼:
如何进行线程异步处理?
本身数据量就很大,而且用JTree显示比较直观些。大家还有没有好办法。
如何进行线程异步处理?
本身数据量就很大,而且用JTree显示比较直观些。大家还有没有好办法。
#5
回复2楼3楼:
不能分段触发,因为我们实现的这个Tree还有搜索功能,可以搜索Tree中的任意节点。所以必须初始化的时候就生成好。
不能分段触发,因为我们实现的这个Tree还有搜索功能,可以搜索Tree中的任意节点。所以必须初始化的时候就生成好。
#6
既然有搜索,你必然要有一个完整的数据模型
但是你没必要把这个完整的数据模型直接对应到显示用的个JTree上
你可以搜索的时候在那个完整的数据模型上搜索
搜到之后,再把这个节点及其所有父节点加载到这个JTree上
但是你没必要把这个完整的数据模型直接对应到显示用的个JTree上
你可以搜索的时候在那个完整的数据模型上搜索
搜到之后,再把这个节点及其所有父节点加载到这个JTree上
#7
我想到的是,LZ是否可以使用分次加载的策略
但是,在用户搜索的时候,不是在树上搜索,而是在数据库中搜索
然后反查树节点的所有子节点。
然后再把数据展示到树上。
但是,在用户搜索的时候,不是在树上搜索,而是在数据库中搜索
然后反查树节点的所有子节点。
然后再把数据展示到树上。
#8
这个想法有点意思。
#9
每次点击只加载它的子节点
#10
数据量多大?
用多线程加载可以考虑一下,每一个一级子节点及其子孙节点用一个线程来处理,可以减少很多时间。搜索功能和加载方式无关,因为搜索也得等tree绘制完成之后才能进行。
用多线程加载可以考虑一下,每一个一级子节点及其子孙节点用一个线程来处理,可以减少很多时间。搜索功能和加载方式无关,因为搜索也得等tree绘制完成之后才能进行。
#11
这个可以有,我有个项目就是如此.
Tree中所有节点均保存在xml中,搜索是搜的xml而不是直接Tree控件,搜到节点后再加载.
#12
大家的回答都非常厉害,但是对于需求还是有些偏差,比如用户是希望既可以在树中选择节点,又可以从搜索框中搜索节点的,如果使用了6楼朋友的方案,就会对用户主动在树上选择节点造成影响的。不过还是感谢大家的积极回复,多谢。
#13
不过,貌似7楼的想法还是可以试试的,稍后回复大家测试结果
#14
这个为什么会影响在树上选择节点呢? 搜索用完整的数据模型,主动选择节点的话就用户点到哪加载到哪.