Цитата:
Сообщение от icWasya
Во первых
Код:
if ComboBox1.ItemIndex = 0 then ..
else
if ComboBox1.ItemIndex = 1 then ..
Ну и если к декабрю прибавить 11, то EncodeDate вылетит с ошибкой.
Нужно использовать функции типа IncMonth
|
последнее лучше так уж тогда
Код:
if ComboBox1.items.Strings[13]='12 месяцев' then DateTimePicker3.Date := EncodeDate(Y+1 , M, D-1);
end;
Для N месяцев (N=1..11)
Код:
then DateTimePicker3.Date := EncodeDate(Y + (M+N) div 12, (M+N) mod 12, D-1)
соответственно, если нынешняя дата, скажем так, 11 месяц, то через 11 месяцев будет
(11+11) mod 12 = 22 mod 12 = 10 месяц
(11+11) div 12 = 22 div 12 = 1, т.е переход в следующий год.
Как-то так.