![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Код:
procedure TForm2.Timer1Timer(Sender: TObject);
begin
for i:=1 to 7 do
if mizm[i]=1 then
for j:=1 to 16 do
begin
i1:=inttostr(i);
j1:=inttostr(j);
if ('m'+i1+'['+j1+']')=1 then
begin
('p'+i1+j1).color:=clyellow ;
('p'+i1+j1).bevelinner:=bvLowered;
end;
else
('p'+i1+j1).color:=clbtnface ;
('p'+i1+j1).bevelinner:=bvraised;
end;
end;как нужно сделать, чтоб все записанное в скобке воспринималось как имя панели, ну или массива как в начале и возможно ли такое вообще??? Последний раз редактировалось Admin, 04.04.2010 в 14:57. |
|
#2
|
||||
|
||||
|
Ну так конечно не прокатит. Вам надо найти компонент с заданым именем, привести его к нужному вам типу. Т.е. примерно так:
Код:
with TPanel(FindComponent('p'+i1+j1))
do begin
Color := clYellow;
BevelInner := bvLowered;
end; |
|
#3
|
|||
|
|||
|
Пасиба
а как быть с массивами? |
|
#4
|
||||
|
||||
|
С массивами так не сделать, но никто не мешает сделать многомерный массив.
Код:
if (m[i1,j1]=1 then Последний раз редактировалось Страдалецъ, 04.04.2010 в 18:28. |
|
#5
|
|||
|
|||
|
пасибо, вроде что-то получается
![]() |
|
#6
|
|||
|
|||
|
Код:
procedure TForm2.Timer1Timer(Sender: TObject);
begin
for i:=1 to 8 do
if mizm[8,i]=1 then
for j:=1 to 16 do
begin
i1:=inttostr(i);
j1:=inttostr(j);
if mizm[i,j]=1 then
with TPanel(FindComponent('p'+i1+j1)) do
begin
Color := clYellow;
BevelInner := bvLowered;
end
else
with TPanel(FindComponent('p'+i1+j1))do
begin
Color := clbtnface;
BevelInner := bvraised;
end;
end;
end;вот получившийся вариант действия по событию, он компилируется, но если мы вносим в массив mizm числа : Код:
procedure TForm2.P11Click(Sender: TObject); begin mizm[1,1]:=1; mizm[7,15]:=1; mizm[7,16]:=1; mizm[6,6]:=1; mizm[8,1]:=1; mizm[8,6]:=1; mizm[8,7]:=1; end; Что делать??? ![]() |
|
#7
|
||||
|
||||
|
Проверяйте где обращаетесь к несуществующему объекту или элементу массива.
|
|
#8
|
||||
|
||||
|
Я вам предложил в начале несколько экстремальный вариант обращения к панельке:
Код:
with TPanel(FindComponent('p'+i1+j1)) do |
|
#9
|
|||
|
|||
|
спасибо, я уже все разобрал
![]() |