Конференция "Начинающим" » Как листать DateTimePicker помесячно ?
 
  • Роман (16.03.13 00:14) [0]
    В общем установил DateTimePicker в режим UpDown и набросал следующие строки ))):

    var
     ColChasForm: TColChasForm;
     valDat: TDateTime;

    implementation

    {$R *.dfm}

    procedure TColChasForm.DateTimePicker1Change(Sender: TObject);
    begin
      if DateTimePicker1.Date > valDat then begin
       valDat:=IncMonth(valDat,1);
       DateTimePicker1.Date:=valDat;
    end else if DateTimePicker1.Date < valDat then begin
       valDat:=IncMonth(valDat,-1);
       DateTimePicker1.Date:=valDat;
    end else exit;
    end;

    procedure TColChasForm.FormCreate(Sender: TObject);
    var
    Year,Month,Day: Word;
    begin
    DecodeDate(Date,Year,Month,Day);
    DateTimePicker1.Date:=EncodeDate(Year,Month,1);
    valDat:=EncodeDate(Year,Month,1);
    end;

    end.



    т.е. объявил глобальную переменную, туда сохраняю текущее время, если пикер меняется то по идее должно либо прибавлять ли отнимать месяц, однако парадокс при нажатии в пикере стрелочки либо вверх либо вниз оно только прибавляет но никак ни хочет отнимать месяц. Посмотрел пошагово, оказывается при нажатии на кнопку вниз DateTimePicker1.Date почему то принимает значение больше установленного по умолчанию в проц. FormCreate, хотя по идее вниз значит должно становится меньше, получается истинно всегда только первое условие, а теперь вопрос в чем фикус-пикус ?
  • clickmaker © (16.03.13 16:21) [1]
    > листать DateTimePicker помесячно ?

    а зачем? если юзер захочет помесячно, он встанет на цифры месяца и будет листать.
    А так - можно просто комбик с месяцами сделать
  • Германн © (17.03.13 02:40) [2]

    > В общем установил DateTimePicker в режим UpDown

    Зачем именно в этот режим установил?
  • ВО (18.03.13 00:43) [3]

    > в чем фикус-пикус ?

    время (обозначающее отрезки времени меньше "дня") не равно 0?
  • Германн © (18.03.13 01:30) [4]

    > время (обозначающее отрезки времени меньше "дня") не равно
    > 0?

    Допустим неравно. И что из этого?
  • clickmaker © (18.03.13 11:36) [5]
    > И что из этого?

    то, что в DateTimePicker1.Date всегда будет больше, чем в valDat
  • Германн © (19.03.13 01:32) [6]

    > clickmaker ©   (18.03.13 11:36) [5]
    >
    > > И что из этого?
    >
    > то, что в DateTimePicker1.Date всегда будет больше, чем
    > в valDat
    >

    Почему? Из-за DateTimeToSystemTime?
  • Роман (19.03.13 03:46) [7]
 
Конференция "Начинающим" » Как листать DateTimePicker помесячно ?
Есть новые Нет новых   [134431   +10][b:0][p:0.001]