好久没来提问了。1,dbedit1--->adoquery.fieldbyname('id').asinteger。怎么限制dbedit1  只能输入 2   3.
2,已知某个时间点(2009-06-06),怎么得出该月份有几个星期,以及通过时间点与该月份的第几个星期来获得这几个星期的起始日期。

解决方案 »

  1.   

    keydown or keypress 里处理就行啦, 如果不符合即 exit第二个问题, 取得些月第一天和最后一天, 循环加7就是了... 
      

  2.   

    1、
    onKeyPress中:
    if not (Key in ['2','3',#8]) then Key := #0;
    2、
    2-1:某日期有几个星期use DateUtils;
    //function WeekOfTheMonth(const AValue: TDateTime): Word; overload;
    var
      iWeekCount: integer;
    begin
      iWeekCount := WeekOfTheMonth(Now); //某日期的月的周数2-2:以周日作为起始日期呢,还是以周一??
      

  3.   

    1、判断OnKeyPress中的Key ;
    2、iWeekCount := WeekOfTheMonth(Now); //某日期的月的周数
      

  4.   

    第一个问题当然是手动写事件限制
    第二个请参考DateUtils这个单元,应该可以满足你的要求。