View Full Version : حرکت زیر نویس در زیر کادر برنامه
spenans
پنج شنبه 19 آبان 1384, 19:48 عصر
با سلام من برنامه ای دارم میخوام یک label به عنوان زیر نویس در زیر کادر برنامه حرکت کنه از چپ به راست و از راست به چپ یعنی مثا اینکه به کار پنجره برخورد بکنه برگرده
با تشکر
Touska
پنج شنبه 19 آبان 1384, 19:58 عصر
می تونی از کامپوننتهای آماده و رایگان JVC استفاده کنید.
spenans
پنج شنبه 19 آبان 1384, 21:58 عصر
می تونی از کامپوننتهای آماده و رایگان JVC استفاده کنید.
ممنون ولی میشه دانلود کرد اگه میشه از کدام آدرس
باز هم تشکر
babak869
پنج شنبه 19 آبان 1384, 22:37 عصر
خیلی راحته که
یه لیبل و یه تایمر بزار و در تایمر بنویس
Label1.left:=Label1.left+1;
و یه شرط بزار که اگه خاصیت Left اون لیبل به آخر فرم رسیده مجددا از اول شروع کنه یعنی مثلا :
Label1.left:=1;
PalizeSoftware
پنج شنبه 19 آبان 1384, 23:53 عصر
می تونی از کامپوننتهای آماده و رایگان JVC استفاده کنید.
این درست نیست که فقط مصرف کننده باشیم. اگه اینجا سایت برنامهنویسی است پس چه بهتر که بجای توصیه در استفاده از کامپوننت و سایر ابزارها حتیالمقدور راهکاری ارائه شود تا دوستان ما به سمت برنامهنویسی حرفهای گرایش پیدا کنند.
نظیر این پیشنهاد سازنده:
خیلی راحته که
یه لیبل و یه تایمر بزار و در تایمر بنویس
Label1.left:=Label1.left+1;
و یه شرط بزار که اگه خاصیت Left اون لیبل به آخر فرم رسیده مجددا از اول شروع کنه یعنی مثلا :
Label1.left:=1;
parhizkar2000
جمعه 20 آبان 1384, 00:27 صبح
اگه بخواهی بصورت رفت وبرگشت باشه باید از دو تایمر استفاده کنی یکی حرکت چپ به راست رو کنترل می کنه و دیگری حرکت راست به چپ . وقتی که لیبل به انتهای فرم رسید تایمر اول خاموش میشه و تایمر دومی شروع بکار می کنهو بالعکس.
تو تایمر اول مینویسی
lable1.left:=lable1.left+1;
if left >400 then
begin
timer1.enabled:=false;
timer2.enabled:=true;
end;
تو تایمر دوم
lable1.right:=lable1.right+1;
if right <1 then
begin
timer2.enabled:=false;
timer1.enabled:=true;
end;
PalizeSoftware
جمعه 20 آبان 1384, 00:58 صبح
اگه بخواهی بصورت رفت وبرگشت باشه باید از دو تایمر استفاده کنی یکی حرکت چپ به راست رو کنترل می کنه و دیگری حرکت راست به چپ . وقتی که لیبل به انتهای فرم رسید تایمر اول خاموش میشه و تایمر دومی شروع بکار می کنهو بالعکس.
دوست عزیز اگه شما یه متغیر بگیری بنام inc که حاویه مقدار 1 باشه، وقتی که به انتهای فرم و اول فرم رسید مقدار inc رو در -1 ضرب کنی دیگه نیازی نیست که از دو تایمر استفاده کنی. یعنی:
lable1.left:=lable1.left+inc;
If Left = 0 Or Left > 400 Then inc:=inc*-1;
موفق باشی
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.