以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  疑问:Calendar(月历)事件中的例子代码?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=26748)

--  作者:万通
--  发布时间:2012/12/13 9:02:00
--  疑问:Calendar(月历)事件中的例子代码?
http://www.foxtable.com/help/topics/2120.htm
   Static lst As List(of Date) \'定义一个静态集合变量,用于存储选择的日期
   If lst Is Nothing Then
      lst = New List(of Date)
   End If
   If ModifierKey <> Keys.Control Then \'如果没有按下Ctrl键
       lst.Clear() \'清除以前的日期
   End If
请教一下:
1、这里为什么要定义一个静态的集合变量。
2、当集合为空时,才创建一个集合对象。为什么不直接:
   dim lst as new list(of date)
3、modifierkey 是什么变量?

--  作者:lin_hailun
--  发布时间:2012/12/13 9:39:00
--  
 呃,是这样的。

 1,静态变量,类似于全局变量,长存内存,但只能在定义它的那个地方使用;

 2,因为是静态变量,没有必有创建多个,这样浪费内存。

 3,ModifierKey Keys型枚举,用于判断Control、Shift、Alt三个按键的状态

--  作者:万通
--  发布时间:2012/12/13 10:10:00
--  

  查看一下,个人归纳如下:

1、Keychar:表示keypress事件e的一个属性;即:e.keychar = keys.枚举值(A、B、C等)。

2、Keycode:表示keyup、keydown事件e的一个属性;即:e.keycode = key.枚举值(F1、F2等)。

3、modifierkey :是一个系统变量;即:modifierkey= keys.枚举值(control、shift、alt)。