Другие языки программирования и технологии

Delphi 7 CheckBox

Допустим я сделал 3 CheckBox'a их можно выбрать все три сразу.Как сделать так чтоб можно было выбрать только один CheckBox.То есть когда я выбераю CheckBox тот который я выбрал отмечался а который был отмечен уберался??
Phoenix Flammeus
Phoenix Flammeus
842
Используй компонент Radiobutton...находясь на одной форме, или в пределах Groupbox они включаются по одному. С Чекбоксами можно только регулируя их статусы программно по условию. Да по сути компоненты имеют одинаковый набор свойств.
Сергей Крапивин
Сергей Крапивин
16 900
Лучший ответ
наджо взять панель GroupBox1 и на нее выкладывай. тогда у тебя будут все CheckBox работать сообща.

она на тойже вкладке находится
Phoenix Flammeus Сделал,все равно можно выделять все три CheckBox'a
Сергей Крапивин Это ты про Radiobutton сейчас эпично рассказал )
ну если ты уж решил извращаться с CheckBox, (а не банально взять RadioGroup и в свойствах Items прописать нужные тебе пункты) и что б все не переделывать предлагаю следующее:

unit Unit3;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;

type
TForm3 = class(TForm)
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
Label1: TLabel;
procedure CheckBox3Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form3: TForm3;

implementation

{$R *.dfm}

procedure TForm3.CheckBox1Click(Sender: TObject);
begin

if CheckBox1.Checked = True then
begin
CheckBox2.Checked := False;
CheckBox3.Checked := False;
end;
end;

procedure TForm3.CheckBox2Click(Sender: TObject);
begin
if CheckBox2.Checked = True then
begin
CheckBox1.Checked := False;
CheckBox3.Checked := False;
end;
end;

procedure TForm3.CheckBox3Click(Sender: TObject);
begin
if CheckBox3.Checked = True then
begin
CheckBox2.Checked := False;
CheckBox1.Checked := False;
end;
end;

end.

процедуры задаются через Events(на всякий случай)
Salman Aliev
Salman Aliev
4 967
Радиобуттон! Я сам так играю с радиобуттон. только одну можно выбрать из нескольких