![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопросик
Compton's G © (2006-02-21 19:19:00)... есть массив размером [0..31] типа String, и 32 TImage со свойством Visible=false.
Элементы массива - это имена 32-х Timage;
Случайно выбирается 9 елементов из массива,
как сделать чтоб 9 Timage, имена которых выбранны изменили свойство visible на true
Надеюсь понятно выразился, заранее спасибо!
Compton's G (2006-02-21 19:38:00) [1]Как понимать
Assigned(tmp)
Leonid Troyanovsky (2006-02-21 19:38:00) [2]
> Compton's G © (21.02.06 19:19)
> Случайно выбирается 9 елементов из массива,
> как сделать чтоб 9 Timage, имена которых выбранны изменили
> свойство
Images : array [0..31] of TImage;
Names : array [0..31] of String;
Случайно выбираются 9 индексов (без возвращения?).
Выбранным делают Images[i].Visible = True.
--
Regards, LVT.
Compton's G (2006-02-21 19:35:00) [3]Спасибо!
Zeqfreed (2006-02-21 19:30:00) [4]Менять свойства через имена это не лучшее решение. Лучше хранить указатели на сами объекты. Ну а если хочется именно через имена, то можно так:
procedure TForm1.Button1Click(Sender: TObject);
var
tmp : TComponent;
begin
tmp := FindComponent('Image1');
if Assigned(tmp) and (tmp is TImage) then
with (tmp as TImage) do begin
Visible := true;
end;
end;
Метод FindComponent нужно вызывать у того объекта, который является владельцем объектов TImage.
Compton's G (2006-02-21 19:27:00) [5]Конкретно мне не понятно, как в цикле подставлять имена Timage взятых из массива