kbmMWLog输出日志到控制台或指定Grid
刚看到有人在kbmMW News问,有没有简单的方法,输出日志到Console窗口或者一个实际的Grid?
作者对此做回复,大意是这样:
对于输出日志到一个Memo,使用TkbmMWStringsLogManager即可。
例如:
lm:IkbmMWStringsLogManager;
..
lm:=TkbmMWStringsLogManager.Create(YourMemo1.Lines,true);
Log.LogManager:=lm;
Log.Debug(...);
对于控制台输出,可以利用TkbmMWStringsLogManager的OnAfterLog事件,在其中执行WriteLn,也可以使用TkbmMWVirtualLogManager,提供匿名过程作为Create方法的参数,这样的话,需要你自己负责锁定/同步主线程。
作者还是建议使用TkbmMWStringsLogManager,为什么呢,我想还不是因为这样更简单,起码不用控制线程安全。
如果你还不知道或者没用过kbmMWLog,可以去看看xalion写的入门文章