Sürücü listesi oluşturma checked sorunu olmuyor lütfen..

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: Sürücü listesi oluşturma checked sorunu

Mesaj gönderen SimaWB »

Yazdığınız gibi iki farklı if kontrolü işinizi görmesi gerekir. Ama bu gibi durumlarda case kullanmak daha iyi olabilir.
There's no place like 127.0.0.1
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: Sürücü listesi oluşturma checked sorunu

Mesaj gönderen SimaWB »

Neden kullanamıyorsunuz?
There's no place like 127.0.0.1
PROGRAMADOR
Üye
Mesajlar: 239
Kayıt: 04 Oca 2008 01:53
Konum: Karşıyaka/İzmir

Re: Sürücü listesi oluşturma checked sorunu olmuyor lütfen..

Mesaj gönderen PROGRAMADOR »

If yerine case'i şu şekilde kullanabilirsiniz:

Kod: Tümünü seç

if GetDriveType(PChar(S)) = DRIVE_RAMDISK then ImageIndex := 3;
if GetDriveType(PChar(S)) = DRIVE_FIXED then ImageIndex := 3;
if GetDriveType(PChar(S)) = DRIVE_REMOTE then ImageIndex := 0;
if GetDriveType(PChar(S)) = DRIVE_CDROM then ImageIndex := 1;
if GetDriveType(PChar(S)) = DRIVE_REMOVABLE then ImageIndex := 2;
Bu kısmın yerine şunları yazın:

Kod: Tümünü seç

Case of GetDriveType(PChar(S))
	DRIVE_RAMDISK: ImageIndex := 3;
	DRIVE_FIXED: ImageIndex := 3;
	DRIVE_REMOTE: ImageIndex := 0;
	DRIVE_CDROM: then ImageIndex := 1;
	DRIVE_REMOVABLE ImageIndex := 2;
End;
Ancak değişen bir şey olacağını sanmıyorum. Kodun tamamını paylaşabilir misiniz?
In dubio pro reo...
Şüpheden sanık/özgürlük yararlanır...
Kullanıcı avatarı
G.Arkas
Üye
Mesajlar: 829
Kayıt: 01 Eki 2007 07:16
Konum: İstanbul
İletişim:

Re: Sürücü listesi oluşturma checked sorunu olmuyor lütfen..

Mesaj gönderen G.Arkas »

If-Then kullanımını iyi öğrenin. if then ile başlayan cümlede eğer devamında begin kullanmazsanız sadece bir altında ki satır koşuldan etkilenir. Ama eğer sizin kodunuzu şu şekilde çevirirseniz kod çalışacaktır.

Kod: Tümünü seç

if GetDriveType(PChar(S)) = DRIVE_RAMDISK then
begin //--- end e kadar olan tüm kısım koşul içerisine dahil edilir.
ImageIndex := 3;
checked := true;
end;
end;
Resim
Cevapla