PDA

View Full Version : Spray بنویسید .



hotice
جمعه 18 اردیبهشت 1383, 16:47 عصر
سلام
یک مثال جالب شاید شما هم خوشتون بیاد.
روی فرم یک image قرار دهید و کد زیر را برای هر بخش بنویسید :


procedure Spray(Canvas: TCanvas; x, y, r: Integer; Color: TColor);
var
rad, a: Single;
i: Integer;
begin
for i := 0 to 100 do
begin
a := Random * 2 * pi;
rad := Random * r;
Canvas.Pixels[x + Round(rad * Cos(a)), y + Round(rad * Sin(a))] := Color;
end;
end;

procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if ssLeft in Shift then Spray(Image1.Canvas, x, y, 40, clRed);
end;

procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if ssLeft in Shift then Spray(Image1.Canvas, x, y, 40, clRed);
end;
البته اولی یک پروسیجر است.
بهتر است Align ایمیج رو alClient قرار بدهید.
موفق باشید :)

JavanSoft
شنبه 19 اردیبهشت 1383, 13:21 عصر
:flower:

arshia_
شنبه 19 اردیبهشت 1383, 19:40 عصر
ممنون
باحال بود
:flower:

Mashatan
شنبه 19 اردیبهشت 1383, 23:43 عصر
http://www.swissdelphicenter.ch/torry/showcode.php?id=1920
:wink:

JavanSoft
یک شنبه 20 اردیبهشت 1383, 13:04 عصر
http://www.swissdelphicenter.ch/torry/showcode.php?id=1920
با عرض تشکر از هردو شما
من یک نکته را خدمتتان عرض کنم
اگر ما تجربیات خود را (حتی اگر از جای دیگری یاد گرفته باشیم ) در این سایت منتقل کنم این فرهنگ انتقال تجربیات جا می افتد و ارام ارام می توان بسمتی رفت که این تجربیات را بصورت تجمعی در یک محل مانند این سایت و یا بهتر از ان در قالب یک مقاله داشته باشیم .

خواهش میکنم اگر بازهم دیگر دوستان و علی الخصوص آقای مشاطان عزیز تجربیاتی دارند دریغ نفرمایند

Mashatan
چهارشنبه 23 اردیبهشت 1383, 13:48 عصر
http://www.swissdelphicenter.ch/torry/showcode.php?id=1920
با عرض تشکر از هردو شما
من یک نکته را خدمتتان عرض کنم
اگر ما تجربیات خود را (حتی اگر از جای دیگری یاد گرفته باشیم ) در این سایت منتقل کنم این فرهنگ انتقال تجربیات جا می افتد و ارام ارام می توان بسمتی رفت که این تجربیات را بصورت تجمعی در یک محل مانند این سایت و یا بهتر از ان در قالب یک مقاله داشته باشیم .
خواهش میکنم اگر بازهم دیگر دوستان و علی الخصوص آقای مشاطان عزیز تجربیاتی دارند دریغ نفرمایند

انتقال تجربیات خوبه ولی خیلی بهتره که منابع هم ذکر بشه ، اینجوری ارزش هر کاری حفظ میشه :wink:

آقای وکیلی ، من هر لینکی که در مورد برنامه نویسی به پستم میخوره در اینجا میزارم http://source.mashatan.com شما هم اگر دوست داشتید سر بزنید به نظر من برای انتقال تجربیات این روش خیلی موثر تر هست .

ارادتمند
مشاطان

JavanSoft
چهارشنبه 23 اردیبهشت 1383, 14:42 عصر
موافقم
نمونه این کار رو قبلا آقای یعقوبی انجام می داد ...
البته اینکار خوبه بشرط اینکه بقیه هم بدونند که چنین جایی برای چنین کاری وجو ددارد
باز هم از لینک شما ممنون