Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

CheckBox


Страницы:   1 2 3

Washington ©   (2007-03-10 21:12:00) 

Как сделать, чтобы CheckBox нельзя было отмечать вручную. А заодно то же самое для CheckListBox, пожалуйста подскажите


RASkov   (2007-03-12 21:08:00) [21]

> [23] Knight ©   (12.03.07 20:57)

Если это мне, то легко:

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
 CheckBox1.Checked:=False;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 CheckBox1.OnClick:=nil;
 CheckBox1.Checked:=True;
 CheckBox1.OnClick:=CheckBox1Click;
end;


Knight   (2007-03-12 20:57:00) [22]

А ты поробуй его отметить.. хоть как-то.. во посмеёмся... проще удалить :)


RASkov   (2007-03-12 20:56:00) [23]

Странно..., а у меня вот так все работает
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
 CheckBox1.Checked:=False;
end;

Т.е. при клике по чекбоксу он просто не выделяется(не ставиться галочка) и все...
D7 - на всякий случай, но это по моему не важно.....


Knight   (2007-03-12 20:49:00) [24]

Щас только посмотрел, что тема от 10-го числа... ужас... :)))


Washington   (2007-03-12 20:45:00) [25]

Парились долго...
Сделал через панель - всё путём. Спасибо

зы А чем сленг не угодил?


Knight   (2007-03-12 20:43:00) [26]

Ну и брось его на панель без выпухлостей и вогнутостей.. поставь панели Енэйблед=Фолс, убери обработку смену статуса чекса в онКлике и будет те счастье ;)


Washington   (2007-03-12 20:39:00) [27]

Чекс только один


Knight   (2007-03-12 20:36:00) [28]

Если чексов несколько и они как-то логически связаны, то можно запользовать GroupBox результат то же.


Джо   (2007-03-12 20:36:00) [29]

> но этот вариант тоже чтото не пропёр

Предлагаю завязывать со сленгом.


Knight   (2007-03-12 20:35:00) [30]

А про серость... пробовал на панель закинуть и сделать Enabled=False не у бокса а у панели?


Knight   (2007-03-12 20:34:00) [31]

Зачем тыт циклишь прогу если статус меняется автоматом (при клике) или устанавливается тобой где-то ещё?


Knight   (2007-03-12 20:32:00) [32]

Телепортатор оставляю на месте.. работает ещё.. :)))))))))


Knight   (2007-03-12 20:32:00) [33]

.. т.е. телепатор...


Washington   (2007-03-12 20:31:00) [34]

ёлки-брёвна, прямо взрыв эмоций
Во-первых когда CheckBox1.Enabled = false он серого цвета!!!!
Во-вторых когда
>procedure TForm5.CheckBox1Click(Sender: TObject);
>begin
>if CheckBox1.Checked=true then CheckBox1.Checked:=true else
>CheckBox1.Checked:=false;
>end;
ничего не происходит, а если
>procedure TForm5.CheckBox1Click(Sender: TObject);
>begin
>if CheckBox1.Checked=true then CheckBox1.Checked:=false else
>CheckBox1.Checked:=true;
>end;
ошибка - Stack Overflow.

Был предложен такой вариант:
procedure TForm1.CheckBox1Click(Sender: TObject);
var
  old: TNotifyEvent;
begin
if b then
 with (Sender as TCheckBox) do
 begin
  old := OnClick;
  OnClick := nil;
  Checked:=not Checked;
  OnClick := old;
 end;
end;

b - гдлобальная перемена boolean

но этот вариант тоже чтото не пропёр


Knight   (2007-03-12 20:18:00) [35]

Если таковое присутствует... а он таки присутствует.. или мне мой телепататор абгрейдить надо %)))))))


Knight   (2007-03-12 20:17:00) [36]

И убери

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
 CheckBox1.Checked:=not CheckBox1.Checked;
end;


Knight   (2007-03-12 20:09:00) [37]

И не сереет и ничё никуда не прёт %)


Knight   (2007-03-12 20:07:00) [38]

Бросаешь его на панел и делаешь нот енэйвлед её :)


Джо   (2007-03-12 20:06:00) [39]

> CheckBox:=false нельзя т.к. цикл и вследствие - ошибка

Что там «прет»? Ну, сделай так, чтобы не «перло» или, если на то пошло, опиши по-человечески, что там у тебя происходит.


Knight   (2007-03-12 20:04:00) [40]

Прёт где-то в другом месте...


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо