维护UI状态的最懒惰方法
昨天在检查一个兄弟的程序,程序需要一个功能,就是在任务栏上显示Listview的选中数目,当然这个ListView是支持多选的了,在测试的过程中发现只有鼠标在Listview上MouseMove的时候才能显示出来选中的数目,后来查看了一下Code,发现原来是vb6的Listview不提供选中事件,所以就在MouseMove里边写代码了。
这个办法当然好,但是我想并不是好办法,因为将来可能在工具栏或右键菜单中要增加删除某个item的功能,这样,计算选中数目就麻烦多了。
其实这是一个普遍问题,就是维护UI界面的控件的状态,以前也是觉得麻烦就乱写一气,其实是有一个偷懒的办法的,可以保留一个Timer作为控件状态的监督者,通过这个Timer作为总调度,也可以让状态的维护成为一个定时、单一的过程,这样写起来也可以专注一点,这个办法当然并不通用,但是对付一些简单的应用我想是不成问题的。
BTW:我在北京的妹妹生了个姑娘,庆祝一下。
这个办法当然好,但是我想并不是好办法,因为将来可能在工具栏或右键菜单中要增加删除某个item的功能,这样,计算选中数目就麻烦多了。
其实这是一个普遍问题,就是维护UI界面的控件的状态,以前也是觉得麻烦就乱写一气,其实是有一个偷懒的办法的,可以保留一个Timer作为控件状态的监督者,通过这个Timer作为总调度,也可以让状态的维护成为一个定时、单一的过程,这样写起来也可以专注一点,这个办法当然并不通用,但是对付一些简单的应用我想是不成问题的。
BTW:我在北京的妹妹生了个姑娘,庆祝一下。