Вниз
Скачать: CL | DM;

Как работать с CheckBox ами в виде массива   Найти похожие ветки 

← →
АП   (2004-10-09 23:13) [0]

У меня на форме есть, к примеру 8 CheckBox и 8 Memo, как работать с ними как с масивом, или чем-то подобным, например я хочу их разом невидимыми сделать, или часть CheckBox отключить, например,4. Каждый разписать CheckBox1.enabled:=false... не хочется. В книжках пытался порыться,  за 15 минут почти ни чего не нашол, Скорей всего это что-то просте, кто знает, ответте.


← →
Defunct ©   (2004-10-09 23:16) [1]

Да это проблема..

хотите совет, чем больше думаете над красотой кода, тем выше вероятность, что программа либо не будет написана, либо будет уже никому не нужна.


← →
Defunct ©   (2004-10-09 23:19) [2]

> за 15 минут почти ни чего не нашол

за 15 минут можно было написать все необходимые комбинации залочивания CheckBox"ов

Procedure Lock4;
Begin
 CheckBox1.Enabled := False;
 CheckBox2.Enabled := False;
 CheckBox3.Enabled := False;
 CheckBox4.Enabled := False;
End;

и т.д.


← →
АП   (2004-10-09 23:25) [3]

Для Memo я извернулся. как-то, методом тыка..., но всё равно, что-то не то. Хотелось бы узнать, какому элементу массва какая фигня соответствует
for i:= 5 to 4+kotv[k] do
begin
(controls[i] as TMemo).visible:=true;

with (controls[i] as TMemo) do begin
SelStart:=0;
SelLength:=200;
SelText:=ms[k,i-5];
end;


← →
GuAV ©   (2004-10-09 23:27) [4]

как вариант...
procedure EnableControls(const C: array of TControl; Value: Boolean);
var I: Integer;
begin
 for I:=Low(C) to High(C) do
   C.Enabled:=Value;
end;

...

EnableControls(CheckBox2, CheckBox4);


← →
GuAV ©   (2004-10-09 23:29) [5]

FindChildControl(CheckBox+IntToStr(I)) as TCheckBox

*********

if controls[i] is TCheckBox
with TCheckBox(controls[i]) do
if Name=CheckBox1


← →
olookin ©   (2004-10-09 23:30) [6]

А не проще проверять через Controls наличие объекта заданного типа и делать с ним все?


← →
АП   (2004-10-09 23:31) [7]

Ok, попробую, хоть в Delphi почти не секу, (на ПасКале7.0 сижу), но ыглядит нормально


← →
XM   (2004-10-10 00:11) [8]

procedure EnableControls(const C: array of TControl; Value: Boolean);
var I: Cardinal;
begin
for I:=Low(C) to High(C) do
  C[I].Enabled:=Value;
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.028 c
14-1096963030
Layner
2004-10-05 11:57
2004.10.24
Kodak выиграла иск о патентах на Java


14-1096888432
Rule
2004-10-04 15:13
2004.10.24
Там я насколько помню намечалась встреча в Кировограде...


4-1095575514
LicProd
2004-09-19 10:31
2004.10.24
Передать Paint CTRL+V


4-1095503824
Ivolg
2004-09-18 14:37
2004.10.24
Мышка


3-1095744487
Fishka
2004-09-21 09:28
2004.10.24
Level DBF-файлов 5 и 7 - какое это имеет значение?




   Наверх