Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > maskedit, edit


Автор: asad 11.2.2009, 22:01
Всем привет!!! У меня на форме n количество рисунков. они все невидимы. мне надо что бы когда в maskedit (или edit, это не так важно) вводишь например цифру 1, то  рисунок 1 становиться видимым, если цифру 2, то 1 и 2 рисунок становились бы видимыми и т.д.

Подскажите пожалуйста, заранее благодарю!!

Автор: Данкинг 11.2.2009, 22:09
Рисунки в Image? Каждому Image'у присваиваешь в свойство .Tag порядковый номер. А после ввода цифры проходишь циклом по всем компонентам формы и проверяешь: если данный компонент является TImage и его .Tag равен такому-то числу (или меньше него), то данный компонент становится видимым. В общем, алгоритм таков. smile 

Автор: Christoph 12.2.2009, 08:49
Зачем Tag? если мы до компиляции уже знаем, сколько всего будет,и какую картинку показывать

Автор: morpheyushka 12.2.2009, 10:11
Цитата(Christoph @  12.2.2009,  08:49 Найти цитируемый пост)
Зачем Tag? если мы до компиляции уже знаем, сколько всего будет,и какую картинку показывать

А если их 40 штук...представляешь себе этот код? Даже копи-пастом надоест баловаться smile 

Автор: THandle 12.2.2009, 10:18
N TImage'ов на форме? smile Это видимо нечто... Используй TImageList.

Автор: ~FoX~ 12.2.2009, 12:10
Какие то вы все замороченые )))
Бросаем на форму N имеджов и не меняем их названия....
Код

var
  Img: TComponent;
  i, k: integer;
begin
    k := StrToInt(Edit1.Text);
    for i := 1 to k do
    begin
        Img := FindComponent('Image' + IntToStr(i));
        (Img as TImage).Visible := true;
    end;
end;

Автор: asad 12.2.2009, 14:53
Благодарю всех, кто ответил мне!!!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)