Вверх ↑
Ответов: 67
Рейтинг: 5
#1: 2011-12-18 19:48:21 ЛС | профиль | цитата
Tad писал(а):
с 2011 перейти, скажем, на 1940-й год
а что там? в феврале 2011 - 28 днеи, а 1940 - 29 дней показывает. Я не про ввод даты, а про перечисление сколько в каком месяце дней
------------ Дoбавленo в 19.49:
вот я панель ввода дат попробовал переделать на MonthCalendar

Add(ChildPanelEx,4451151,420,273)
{
}
BEGIN_SDK
  Add(EditMultiEx,1296536,280,35)
  {
   EventCount=#7:onNotes|
   Width=608
   Height=283
   VOffset=210
  }
  Add(Panel,14031836,357,42)
  {
   Width=618
   Height=53
   Align=2
   BorderWidth=0
   BevelInner=0
   BevelWidth=0
  }
  Add(ComboBox,14428230,770,84)
  {
   Left=345
   Top=15
   Height=21
   Font=[Arial,10,1,0,204]
   Text=""
   DataType=1
   ReadOnly=0
   Point(doSelect)
   Point(EditText)
   Point(Index)
   Point(onSelect)
   link(onSelect,7043639:doWork2,[(859,104)(859,299)])
  }
  Add(Label,7918268,287,42)
  {
   Left=295
   Top=17
   Width=41
   Height=20
   Font=[Arial,10,1,0,204]
   Caption="День:"
   Alignment=1
  }
  Add(ComboBox,251133,357,84)
  {
   Left=185
   Top=15
   Width=100
   Height=21
   Font=[Arial,10,1,0,204]
   Strings=#0:|6:Январь|7:Февраль|4:Март|6:Апрель|3:Май|4:Июнь|4:Июль|6:Август|8:Сентябрь|7:Октябрь|6:Ноябрь|7:Декабрь|
   Text=""
   ReadOnly=0
   Point(Index)
   Point(doSelect)
   link(onClick,2305200:doWork2,[(399,97)(399,160)])
  }
  Add(Label,7804424,301,42)
  {
   Left=125
   Top=17
   Height=20
   Font=[Arial,10,1,0,204]
   Caption="Месяц:"
   Alignment=1
  }
  Add(ComboBox,4028433,420,84)
  {
   Left=50
   Top=15
   Width=65
   Height=21
   Font=[Arial,10,1,0,204]
   Strings=#0:|4:1935|4:1936|4:1937|4:1938|4:1939|4:1940|4:1941|4:1942|4:1943|4:1944|4:1945|4:1946|4:1947|4:1948|4:1949|4:1950|4:1951|4:1952|4:1953|4:1954|4:1955|4:1956|4:1957|4:1958|4:1959|4:1960|4:1961|4:1962|4:1963|4:1964|4:1965|4:1966|4:1967|4:1968|4:1969|4:1970|4:1971|4:1972|4:1973|4:1974|4:1975|4:1976|4:1977|4:1978|4:1979|4:1980|4:1981|4:1982|4:1983|4:1984|4:1985|4:1986|4:1987|4:1988|4:1989|4:1990|4:1991|4:1992|4:1993|4:1994|4:1995|4:1996|4:1997|4:1998|4:1999|4:2000|4:2001|4:2002|4:2003|4:2004|4:2005|4:2006|4:2007|4:2008|4:2009|4:2010|4:2011|4:2012|
   Text=""
   DataType=1
   ReadOnly=0
   Point(doSelect)
   Point(EditText)
   link(onClick,2305200:doWork1,[(467,97)])
  }
  Add(Label,3752545,315,42)
  {
   Left=10
   Top=17
   Width=31
   Height=20
   Font=[Arial,10,1,0,204]
   Caption="Год:"
   Alignment=1
  }
  Add(Button,6432424,315,259)
  {
   Left=415
   Top=10
   Width=185
   Height=30
   Font=[Arial,10,1,0,204]
   Enabled=1
   TabOrder=-1
   Caption="Какой Вы зверь?"
   Point(doEnabled)
   link(onClick,2170766:doGetString,[])
  }
  Add(StrList,2170766,357,217)
  {
   Strings=#0:|3:Jan|3:Feb|3:Mar|3:Apr|3:May|3:Jun|3:Jul|3:Aug|3:Sep|3:Oct|3:Nov|3:Dec|
   Point(doGetString)
   Point(String)
   Point(onGetString)
   Point(IdxToSelect)
   link(onGetString,8953247:doString,[(411,230)(411,251)])
   link(IdxToSelect,11421956:Var2,[])
  }
  Add(FormatStr,8953247,434,245)
  {
   DataCount=3
   Mask="SELECT note FROM notes WHERE
Idx = (SELECT noteidx FROM animals WHERE
       Idx = (SELECT CASE
                       WHEN (SELECT %2 FROM indexes WHERE Year = %1) + %3 > 60
                       THEN (SELECT %2 FROM indexes WHERE Year = %1) + %3 - 60
                       ELSE (SELECT %2 FROM indexes WHERE Year = %1) + %3
                       END
             )
      )
               "
   link(onFString,14519255:doQuery,[])
   link(Str1,15844792:Var2,[])
   link(Str3,14428230:EditText,[(454,202)(790,202)])
  }
  Add(DSC_Query,14519255,805,245)
  {
   DSManager="parent.hor"
   link(onQuery,1296536:onNotes,[])
  }
  Add(InlineCode,14207354,770,42)
  {
   WorkPoints=#6:doTest|
   EventPoints=#3:Day|4:Mess|
   DataPoints=#5:Month|4:Year|
   Code=#15:unit HiAsmUnit;|12:// Autor Tad|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10:   private|0:|9:   public|33:   Month,Year,Day,Mess:THI_Event;|49:   Procedure doTest(var _Data:TData; Index:Word);|0:|5: end;|0:|14:implementation|29:Procedure THiAsmClass.doTest;|15:var Y,M,i:word;|23:d:array[1..12] of word;|5:begin|24:Y:=toIntegerEvent(Year);|49:If Y=0 then begin _hi_onEvent(Mess,0); Exit; end;|25:M:=toIntegerEvent(Month);|49:If M=0 then begin _hi_onEvent(Mess,0); Exit; end;|9:d[1]:=31;|28:d[2]:=28+ord(IsLeapYear(Y));|9:d[3]:=31;|9:d[4]:=30;|9:d[5]:=31;|9:d[6]:=30;|9:d[7]:=31;|9:d[8]:=31;|9:d[9]:=30;|10:d[10]:=31;|10:d[11]:=30;|10:d[12]:=31;|39:for i:=1 to d[M] do _hi_onEvent(day,i);|20:_hi_onEvent(Mess,1);|4:end;|4:end.|
  }
  Add(GetDataEx,11421956,371,147)
  {
   link(Data,251133:Index,[])
  }
  Add(GetDataEx,15844792,434,140)
  {
   link(Data,4028433:EditText,[])
  }
  Add(HubEx,2305200,463,154)
  {
   link(onEvent,11374887:doEvent1,[])
  }
  Add(Hub,11374887,483,154)
  {
   link(onEvent1,14428230:doClear,[(516,160)(516,97)])
   link(onEvent2,8718352:doEnumDays,[(515,167)(515,174)])
  }
  Add(Memory,7192578,728,42)
  {
   Point(Data)
  }
  Add(DoData,1399740,721,126)
  {
   link(onEventData,14428230:doSelect,[])
  }
  Add(MonthCalendar,8718352,532,168)
  {
   Holidays=[]
   link(onDay,3061480:doCompare,[])
   link(Year,4880178:Var2,[])
   link(Month,12493112:Var2,[])
  }
  Add(If_else,3061480,581,168)
  {
   Type=5
   Op2=String()
   link(onTrue,16347274:doCompare,[])
   link(onFalse,6961229:doWork2,[(624,181)(624,265)])
   link(Op1,12493112:Var3,[(587,152)])
  }
  Add(If_else,16347274,630,168)
  {
   Type=5
   Op2=String()
   link(onTrue,6827806:doEvent1,[(674,174)(674,125)])
   link(onFalse,6961229:doWork1,[(674,181)])
   link(Op1,4880178:Var3,[(636,145)])
  }
  Add(GetDataEx,12493112,539,147)
  {
   Angle=3
   link(Data,11421956:Var3,[])
  }
  Add(GetDataEx,4880178,532,140)
  {
   Angle=3
   link(Data,15844792:Var3,[])
  }
  Add(ChanelToIndex,15950329,714,259)
  {
   Count=1
   link(onIndex,7043639:doWork1,[(760,265)])
  }
  Add(HubEx,6961229,670,259)
  {
   link(onEvent,15950329:doWork1,[])
  }
  Add(HubEx,7043639,756,293)
  {
   Angle=2
   link(onEvent,6432424:doEnabled,[(301,299)(301,265)])
  }
  Add(Hub,6827806,693,119)
  {
   link(onEvent1,14428230:doAdd,[(716,125)(716,90)])
   link(onEvent2,1399740:doData,[])
  }
END_SDK


но расчитывается только не выше 2004 года
карма: 1

1
Голосовали:nesco