Chinaunix首页 | 论坛 | 博客
  • 博客访问: 593898
  • 博文数量: 1357
  • 博客积分: 3000
  • 博客等级: 中校
  • 技术积分: 14950
  • 用 户 组: 普通用户
  • 注册时间: 2010-06-14 20:23
文章分类

全部博文(1357)

文章存档

2010年(1357)

我的朋友

分类:

2010-10-02 22:22:27

  不要留恋过去   怎样才能约束用户,不让其选择过去的日期呢?有一个很傻的办法,就是每次启动应用程序的时候,自动把monthcalendar控件的mindate属性的值设为今天。这样虽然禁止了用户选择过去的日期,却带来另外一些问题:   当月之前的日期无法查看。   和选项窗体的min date设置相冲。   有鉴于此,我们采用另一种办法,就是在用户选中某个日期时,判断这个日期是否已经过去,若是,则禁用pin菜单项,若否,则启用pin菜单项。那么,如何获知用户选中了某个日期?最简单的办法就是使用monthcalendar控件的datechanged事件:   代码 1   运行应用程序,你会发现,当我选中今天或者将来的日期时,pin菜单项是启用的(图1),而当我选中过去的日期时,pin菜单项则是禁用的(图2):   图 1   图 2   这(几)天不要选   在继续之前,我们有必要搞清楚,"排除某(几)天"究竟是什么意思。在这里,"排除某(几)天"并不是指禁止用户选中那(几)天,而是指那(几)天不在计划中,但我们很清楚,计划赶不上变化,或许那(几)天真正到来的时候又可以选了。   和之前的"钉住日期"相比,"排除日期"除了无需在monthcalendar控件上有所反映之外,其它部分基本上是一样的,它支持排除某天、连续的几天和某个周末,用来保存被排除的日期的文件和应用程序放在同一个文件夹里,应用程序在启动的时候会检查这个文件是否存在,如果不存在就创建一个空白的文件。从上面这些描述来看,"排除日期"和"钉住日期"在很大程度上共享着相同的代码,于是,接下来就是考虑如何重用现有的代码并实现新的功能。 如果喜欢wm有约(三):下一次是什么时候?请收藏或告诉您的好朋友.
阅读(155) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~