![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Доброго времени суток)
Не как не могу сделать процедуру что бы в качестве входных данных можно было указывать номер компонента(Это всегда будет TImageX) и форму на которой он находиться.Вот моя процедура procedure LoadAva (ImageName:string;FormNumber:TForm;ImageNumber:TIm age);//вот я её объясил Код:
procedure TForm1.LoadAva(ImageName: string; FormNumber: TForm; //Тело
ImageNumber: TImage);
begin
If FileExists(Serverdir+imageName+'.bmp') then
begin
Form1[FormNumber].Image[ImageNumber].Picture.LoadFromFile(Serverdir+imageName+'.bmp');
end
else
begin
If FileExists(Serverdir+'DefaultAvatar.bmp') then
begin
Form[FormNumber].Image[ImageNumber].LoadFromFile(Serverdir+'DefaultAvatar.bmp');
end;
end;
end;lmikle: Пользуемся тегами! Сори если мимо написал Последний раз редактировалось lmikle, 02.02.2013 в 02:00. |
|
#2
|
||||
|
||||
|
А так разве недостаточно?
Код:
procedure TForm1.LoadAva(ImageName : String; Image : TImage);
begin
if FileExists(Serverdir+imageName+'.bmp') then
Image.Picture.LoadFromFile(Serverdir+imageName+'.bmp')
else if FileExists(Serverdir+'DefaultAvatar.bmp') then
Image.LoadFromFile(Serverdir+'DefaultAvatar.bmp');
end; |
|
#3
|
||||
|
||||
|
Да это работает на 1 форме,на когда я вызываю процедуру с другой формы,мне надо сделать тоже самое тока уже с другим TImage
|
|
#4
|
|||
|
|||
|
Ну и? Это работает для любого Image, не зависимо от того, на какой форме он лежит. только можно процку сделать глобальной или методом класса.
Код:
unit ImageLoader;
interface
uses ...
procedure LoadAva(ImageName : String; Image : TImage);
implementation
procedure LoadAva(ImageName : String; Image : TImage);
begin
if FileExists(Serverdir+imageName+'.bmp') then
Image.Picture.LoadFromFile(Serverdir+imageName+'.bmp')
else if FileExists(Serverdir+'DefaultAvatar.bmp') then
Image.LoadFromFile(Serverdir+'DefaultAvatar.bmp');
end;
end.И использование соотв.: Код:
LoadAva('file1.bmp',Form1.Image1);
LoadAva('file2.bmp',Form2.Image1);
LoadAva('file3.bmp',Form2.Image2);
...ЗЫ. Это просто как вариант. Еще можно сделать базовую форму с нужным методом, а потом все формы , которые должны иметь такой функционал, наследовать от этой формы... |
|
#5
|
||||
|
||||
|
Все,спасибо,просто когда вызываю с другой формы надо писать Form1.LoadAva(...); ))
|