PDA

View Full Version : ایجاد object



حامی2
پنج شنبه 09 شهریور 1385, 02:21 صبح
با سلام به دوستان عزیز

من می خواهم در برنامه ام با استفاده از زدن کلیدی یک object که قبلا نبوده ایجاد کنم مثلا فرض کنید که روی یک عکس در هرجایی که کلیک می کنم یک Timage جدید ایجاد شود و بعد با یک کد عکسی هم به آن نسبت بدم برای من ایجاد Timage مشکل است

لطفا راهنمایی کنید و اگر کد نمونه ای را هم بدید ممنون می شوم

Mahmood_M
پنج شنبه 09 شهریور 1385, 02:32 صبح
سلام ...
برای این کار اول باید اشیاء مورد نظر رو به عنوان یه متغیر تعریغ کنید و بعد اون رو ایجاد کنید ...
مثال :

var
I: TImage;
begin
I:= TImage.Create;
end;این جوری شی شما درست می شه بعد با دادن مقادیر دلخواه می تونید جای اون و دیگر خصوصیاتش رو تغییر بدید ...
موفق باشید ...

mzjahromi
پنج شنبه 09 شهریور 1385, 06:47 صبح
برای این کار اول باید اشیاء مورد نظر رو به عنوان یه متغیر تعریغ کنید و بعد اون رو ایجاد کنید ...
همچنیم Parent و Name اونو تنظیم کنید در غیر اینصورت نمایش داده نمیشه


I.Parent:=Self;
I.Name:='Image1'

حامی2
پنج شنبه 09 شهریور 1385, 19:13 عصر
خیلی خیلی ممنون از راهنمایی شما

اما حالا یه مشکل هست

فرض کنید که با اینکار و هر کلیک ماوس یک image روی فرم ساخته میشه در مکان ماوس و اسم عکس ها را هم متفاوت با یک conter بهشون دادیم اما حالا می خواهیم وقتی روی هریک کلیک کردیم اسمش را به caption یه lable نسبت بدیم باید چه کار کرد ؟

این کد من هست اما همیشه وقتی روی هرکدام از عکس ها کلیک میکنم آخرین مقدار I بر می گردد البته باید هم اینجور باشه چون مشخصات I را دارم می گیرم اما من میخواهم اسم اون عکس کلیک شده بر گردد؟؟؟؟



procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);

begin

I:=TImage.Create(self);
I.Parent:=Self;
I.Height:=20;
I.Width:=20;
I.Picture.Bitmap.LoadFromFile('1.bmp');
I.Left:=X;
I.Top:=Y;
I.Tag:=j;
I.Name:='station'+IntToStr(I.Tag);

I.OnDblClick:=send;

j:=j+1;

end;



procedure TForm1.send(Sender: TObject);
begin
Label2.Caption:=I.Name;

end;



خیلی ممنون

Mahyaa
پنج شنبه 09 شهریور 1385, 21:27 عصر
procedure TForm1.send(Sender: TObject);
begin
Label2.Caption:=(Sender As TImage).Name;
end;

حامی2
جمعه 10 شهریور 1385, 00:42 صبح
جناب mahyaa
بسیار متشکرم
کمک بسیار بزرگی به من کردید
بازم ممنونم
موفق باشید