![]() |
|
|
#1
|
|||
|
|||
|
Как сделать так что бы программа учитывала высокосные года? А так же как использовать ComboBox, вместо Edit
|
|
#2
|
|||
|
|||
|
Пользуйтесь стандартными функциями (EncodeDate, DecodeDate и множество других на все случаи) - там все уже учтено.
С ComboBox можете работать так же как с Edit - у него тоже есть свойство Text. При желании можно заполнить список Items и переключать их свойством ItemIndex (в момент изменения будет меняться также и Text). Ну и свойство Style - если выберете csDropDownList - сможете только выбирать из списка - вручную ничего ввести будет нельзя. По умолчанию Style=csDropDown - можно или ввести вручную или выбрать из списка. |
|
#3
|
|||
|
|||
|
а можно пример кодировки с высокосным годом? буду очень признателен
|
|
#4
|
|||
|
|||
|
Объясните подробнее что хотите... Это?:
Код:
uses ..., DateUtils; ... ShowMessage( IntToStr( DaysInYear( EncodeDate(2008,01,01) ) )); // 366 дней - високосный год ShowMessage( IntToStr( DaysInYear( EncodeDate(2011,01,01) ) )); // 365 дней - обычный год |
|
#5
|
|||
|
|||
|
Благодарю!!
|
|
#6
|
|||
|
|||
|
А если через SysUtils, то как это будет выглядить? Заранее благодарю
|
|
#7
|
|||
|
|||
|
Код:
if IsLeapYear(2008) then ShowMessage('високосный') else ShowMessage('невисокосный'); |
|
#8
|
|||
|
|||
|
всегда выдаёт что высокосный год ><
|
|
#9
|
||||
|
||||
|
Цитата:
Код:
IsLeapYear(СЮДА НУЖНЫЙ ГОД!!!); |
|
#10
|
|||
|
|||
|
Цитата:
|
|
#11
|
||||
|
||||
|
Цитата:
Ну так если стоит 2008ой и он високосный, чего ты жалуешься что все время выдает високосный? |
|
#12
|
|||
|
|||
|
Цитата:
|
|
#13
|
||||
|
||||
|
Если я правильно понял выбирается из ComboBox'a. Верно?
Какие там элементы в нем? Года? 2000 2001 2002 2003 ... 2011 Так? |
|
#14
|
|||
|
|||
|
Код:
IsLeapYear(strtoint(combobox1.text)) |
|
#15
|
|||
|
|||
|
Всем спасибо!
|