Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
CalendarView tarih değeri
#1
Merhaba.

Tarihe göre listviewde sıralama yaptırıyorum, fakat bir sorunla karşı karşıya kaldım.
Calendar tarihi click yaptığımda normal olarak (26.03.2018) olarak veriyor aynı tarihi ikinci kez click yaptığımda ise (00.00.0000) olarak tarihi veriyor. Bu sorun neden kaynaklı olabilir?

procedure TForm2.CalendarView1Click(Sender: TObject);
begin
  showmessage(datetostr(CalendarView1.Date));
end;
Cevapla
#2
Şimdi denedim çok garip bir durum. Ben de ilk defa karşılaştım. Her gün bir şeyler öğreniyorum bunun için sana da teşekkür.

Şöyle test ettim, aynı anda birden fazla tarih seçme imkanından yola çıktım, her click olayında CalendarView1.SelectionCount olayına baktım (0) veya (1) oluyordu. (1) olduğunda doğru değer veriyor (0) olduğunda ters köşe oluyordu.

Ben de Seçim adedini teke düşürürsem ne olur diye bakındım
  CalendarView1.SelectionMode := TSelectionMode(0); //smNone;

şeklinde yapınca düzeldi. Anladığım odur ki, ilk tıklamada seçmiş, ikinci tıklamada seçimi kaldırmış oluyoruz. 

Bilgine...

Şöyle bir üçkağıt yaptım. Hani mouse move olurken değeri okuyoruz ya, orayı şöyle yapınca mode ne olursa olsun en son mouse pozisyonundaki DATE değeri global bir değişkenden alındı. Big Grin
var
 xDate, xClickDate : TDate;

procedure TForm1.CalendarView1Click(Sender: TObject);
begin
 xClickDate := xDate;
 showmessage(datetostr(xClickDate));
end;

procedure TForm1.CalendarView1DrawDayItem(Sender: TObject;
 DrawParams: TDrawViewInfoParams; CalendarViewViewInfo: TCellItemViewInfo);
begin
 xDate := CalendarViewViewInfo.Date;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 CalendarView1.SelectionMode := TSelectionMode(2); //smNone:0, mSingle:1, smMultiple:2
end;
Saygılarımla
Muharrem ARMAN

WE75nm.gif


Cevapla
#3
(26-03-2018, Saat: 16:34)mrmarman Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlŞimdi denedim çok garip bir durum. Ben de ilk defa karşılaştım. Her gün bir şeyler öğreniyorum bunun için sana da teşekkür.

Şöyle test ettim, aynı anda birden fazla tarih seçme imkanından yola çıktım, her click olayında CalendarView1.SelectionCount olayına baktım (0) veya (1) oluyordu. (1) olduğunda doğru değer veriyor (0) olduğunda ters köşe oluyordu.

Ben de Seçim adedini teke düşürürsem ne olur diye bakındım
  CalendarView1.SelectionMode := TSelectionMode(0); //smNone;

şeklinde yapınca düzeldi. Anladığım odur ki, ilk tıklamada seçmiş, ikinci tıklamada seçimi kaldırmış oluyoruz. 

Bilgine...

Şöyle bir üçkağıt yaptım. Hani mouse move olurken değeri okuyoruz ya, orayı şöyle yapınca mode ne olursa olsun en son mouse pozisyonundaki DATE değeri global bir değişkenden alındı. Big Grin
var
 xDate, xClickDate : TDate;

procedure TForm1.CalendarView1Click(Sender: TObject);
begin
 xClickDate := xDate;
 showmessage(datetostr(xClickDate));
end;

procedure TForm1.CalendarView1DrawDayItem(Sender: TObject;
 DrawParams: TDrawViewInfoParams; CalendarViewViewInfo: TCellItemViewInfo);
begin
 xDate := CalendarViewViewInfo.Date;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 CalendarView1.SelectionMode := TSelectionMode(2); //smNone:0, mSingle:1, smMultiple:2
end;


Teşekkür ederim, CalendarView1 hatalı olduğunu düşünmeye başlamıştım cevabınızla emin oldum. 
Cevapla
#4
Rica ederim.

Hata demeyelim, seçimi geri alma opsiyonu var diyelim.

Sadece ifade kısmını yazılımcı tarafından elden geçirilerek renginin değiştirilmesi vs. ile yeniden düzenlenmesi gerekiyor.

Başarılar.
Saygılarımla
Muharrem ARMAN

WE75nm.gif


Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Delphi Sql Tarih Sorunu Pimapen_Nuri 15 527 14-03-2018, Saat: 17:29
Son Yorum: Pimapen_Nuri
  iki tarih ve saat arasındaki ay gün ve saat farkı erdogan 2 197 31-12-2017, Saat: 19:25
Son Yorum: adelphiforumz
  FastReport Form'dan tarih bilgisi almak yhackup 2 206 20-11-2017, Saat: 10:42
Son Yorum: yhackup
  Servis (wsdl) dönen değeri işleme esistem 17 1.158 22-08-2017, Saat: 09:57
Son Yorum: ismailkocacan
  İki tarih arası sorguda... [Çözüldü] dilo 2 303 30-06-2017, Saat: 10:41
Son Yorum: dilo



Konuyu Okuyanlar: 1 Ziyaretçi