功能:在线列表,列表的每一项的样式是鼠标滑过呈现一些功能按钮和图片。
需要改造的问题:在线列表加载特别卡
需要改造的问题:在线列表加载特别卡
原来的实现方式:是在QTableWidget嵌入一个QWidget,这个QWidget里面添加了4个按钮和3个QLable,呵呵 想想这个QWidget也是蛮拼的是吧。哈哈。。
然后在每一次服务器发过来列表内容的时候,这时候发现一个不好的点,服务器怎么可以每次都是返回全部的列表内容,虽然现在的带宽都是很大的,并且就算有一万人总量也就一m左右。但是可以有更好的方式为什么不用呢?更好的方法应该是服务器返回的增减量,然后返回只是部分数据。继续说在线列表的控件。每次拿到服务器返回的人员名单时与客户端本地内存中的人员列表做一个取舍找出改变的列表然后只加载改变的,当然了第一次是需要全部加载的。
这样做的优点:1.毋庸置疑,这样做最大的好处就是简单。鼠标划过事件,控件的显隐,等等这些处理处理起来很方便。
2. 样式好处理。因为是在widget上处理,所以样式处理起来很方便。
这样处理的不好之处:当数据量小的时候并没有缺点,但是当数据量一旦大了之后缺点就显示出来了。那就是一个字 慢。而且随着数据越大越难。这里面的道理就是你要构造一堆控件放到里面,这是需要时间和内存的啊。