Konuya cevap yaz

Form üzerinde bir çok (Örneğin 10 adet) CheckBox bileşeni olduğunu varsayalım ve bunlardan sadece 3 tanesi seçildiğinde diğerlerinin seçilmesinin önüne geçelim. (Seçeneğe bağlı raporlama işlemlerinde çok işe yarayan bir özellik)


1. Yöntem:

3 adet ChecBox seçilince "En çok 3 alan seçebilirsiniz!" şeklinde uyarı versin ve daha fazla seçim yapılmasının önüne geçilsin.


CheckBox1 OnClick yordamına şu kodları ekleyin.


[CODE]procedure TForm1.CheckBox1Click(Sender: TObject);

Const

{$J+} Sayac: Integer = 0; {$J-}

begin

  If TCheckBox(Sender).Tag = 0 then

  begin

    If NOT TCheckBox(Sender).Checked then Dec(Sayac)

  else

    If Sayac = 3 then begin TCheckBox(Sender).Tag := 1;

  TCheckBox(Sender).Checked := False;

  ShowMessage('En çok 3 alan seçebilirsiniz!');

end

else

  Inc(Sayac);

end

else

  TCheckBox(Sender).Tag := 0;

end;

[/CODE]


Daha sonra bu kodu diğer ChecBox bileşenlerinin OnClik yordamlarını "CheckBox1Click" olarak işaretleyin.


Kodları ekledikten sonra form üzerindeki CheckBox bileşenlerine tıkladığınızda 3'ten fazla seçim yapmanızın önüne geçilecektir.


[ATTACH=full]123826[/ATTACH]


Atatürk'ün doğduğu şehir?
Geri
Top