bir ay içerisindeki hafta sonlarını bulma
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
bir ay içerisindeki hafta sonlarını bulma
merhaba arkadaşlar hepinize kolay gelsin ben bir puantaj programı yazmaya başlayacağım ama kafama takılan bir soru varki hemen soyleyım.
kullanıcı yıl bolumunden yılı:2004 ay kısmından AY:Ocak
gibi bir şeçim yaptığında otomatik olarak cumrtesi ve pazar günlerini bulmasını ve bu günlerin başlıklarını kırmızı yapmasını ve ayın kaç gün olduğunu bulmasını istiyorum acaba boyle bir şeyi nasıl yapabilirim yardımlarınız için şimdidien teşekürler kolay gelsin.....
kullanıcı yıl bolumunden yılı:2004 ay kısmından AY:Ocak
gibi bir şeçim yaptığında otomatik olarak cumrtesi ve pazar günlerini bulmasını ve bu günlerin başlıklarını kırmızı yapmasını ve ayın kaç gün olduğunu bulmasını istiyorum acaba boyle bir şeyi nasıl yapabilirim yardımlarınız için şimdidien teşekürler kolay gelsin.....
derviş
Merhaba hocam öncelikle aşağıdaki linki inceler iseniz bir çok sorunuza cevap olacaktır...
http://www.delphiturkiye.com/index.php? ... tetime.htm
kolay gelsin;
http://www.delphiturkiye.com/index.php? ... tetime.htm
kolay gelsin;

merhaba hocam bu linkte vermiş olduğunuz fonksiyonları inceledim am tam işime yarayan bir şey bulamadım..
yapmak istediğimi anlatayım boylece daha netleştiriririz
ben 31 tane combobox koydum formuma ve bunların başlıklarının takvim ile aynı yürümesini istiyorum yani mesela 2005 ocak 1 hangi günü denk geliyor mesela pazartesine 2005 seçtiğinde yıl olarak aylardan da ocağı 1.günde pazartesi 2.salı vs yazmasını isityorum aslında tamamen takvim gibi ama nasıl yaparım bunu.
mont calendar içerisinden bilgi alabilirmiyim acaba
yada sadece hafta sonlarını yani cumartesi pazarı yazsın ...
yapmak istediğimi anlatayım boylece daha netleştiriririz
ben 31 tane combobox koydum formuma ve bunların başlıklarının takvim ile aynı yürümesini istiyorum yani mesela 2005 ocak 1 hangi günü denk geliyor mesela pazartesine 2005 seçtiğinde yıl olarak aylardan da ocağı 1.günde pazartesi 2.salı vs yazmasını isityorum aslında tamamen takvim gibi ama nasıl yaparım bunu.
mont calendar içerisinden bilgi alabilirmiyim acaba
yada sadece hafta sonlarını yani cumartesi pazarı yazsın ...
derviş
S.A.
anladığım kadarıyla yılı ve ayı seçtikten sonra comboboxlarda günleri göstermek istiyorsun.
yılı ve ayı seçtik. göster düğmesine bastık.
bu sana bir yol gösterebilir belki. hafta sonlarını bulmak için dayofweek functionunu kullanabilirsin.
Not: kodları denemedim ama mantığı daha önce kullandım.
Kolay gelsin.
anladığım kadarıyla yılı ve ayı seçtikten sonra comboboxlarda günleri göstermek istiyorsun.
yılı ve ayı seçtik. göster düğmesine bastık.
Kod: Tümünü seç
var
mycb:TComponent;
i:byte;
startdate:TDatetime;
begin
startdate:=strtodate('01.01.2005');//sen bu değişkene değeri dinamik olarak atacaksın.
for i:=0 to 30 do
begin
mycb:=findcomponent('ComboBox'+inttostr(i+1));
if (mycb is tcombobox) then
Begin
(mycb as Tcombobox).text:=formatdatetime('dddd',startdate);
startdate:=startdate+1;
end;
end;
end;
Not: kodları denemedim ama mantığı daha önce kullandım.
Kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
abilerim şimdi ben bir soru sormak istiyorum
ayın kaç gün çektiğini bulduruyorum
ayın başşlanıgıcınınıda bulduruyorum ve soyle bir dongu kuruyorum fakat sorun çıkıyor acaba yanlışmı yapıyorum
kodları bu şekilde yazacağım yanımda mevcut değil siz anlarsınız zaten..
pazartesini 1.gün kabul ettim
g:=dayof(ayınkacgüncektiği);
f:=(ayınbaslangıctarihi);
for i:=0 to g do
begin
if weekofdays((f))=6 then
begin
label1.color:=clred;
incday(f);
end
else
incday(f);
şimdi dongu bu kusura bakmayın bu şekilde yazdım ama nedense gun hep bir artıyor ama 31 günlük dongu oluyor....
kolay gelsin teşekürler...
ayın kaç gün çektiğini bulduruyorum
ayın başşlanıgıcınınıda bulduruyorum ve soyle bir dongu kuruyorum fakat sorun çıkıyor acaba yanlışmı yapıyorum
kodları bu şekilde yazacağım yanımda mevcut değil siz anlarsınız zaten..
pazartesini 1.gün kabul ettim
g:=dayof(ayınkacgüncektiği);
f:=(ayınbaslangıctarihi);
for i:=0 to g do
begin
if weekofdays((f))=6 then
begin
label1.color:=clred;
incday(f);
end
else
incday(f);
şimdi dongu bu kusura bakmayın bu şekilde yazdım ama nedense gun hep bir artıyor ama 31 günlük dongu oluyor....
kolay gelsin teşekürler...
derviş
istediğiniz böyle bir şeye benziyor gibi...
Kod: Tümünü seç
TDateTime Tarih; // tarihe de ilk değer verilebilir
while(Tarih != istediğinizTarih) {
if (Tarih.DayOfWeek() == 7) || (Tarih.DayOfWeek() == 1)) { //7 : cumartesi
istediğiniz işlemler...
}
Tarih++;
Application->ProcessMessages();
}
En son warder tarafından 09 Eki 2004 11:42 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
... Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!
Mustafa Kemal Atatürk...
Mustafa Kemal Atatürk...