PDA

View Full Version : نحوه کنترل خارج نشدن توپ از صفحه نمایش!؟



aminhackerman
دوشنبه 29 آذر 1389, 19:21 عصر
با عرض سلام مجدد :لبخند:
این برنامه حرکت توپ تو صفحه نمایش است
تو کدش کنترل کردم وقتی Top و width زد از اسکرین بیرون به همون اندازه کم میشه که مشکلی که پیش میاد اینه که حرکت کلا یک نواخت میشه اگه این کارم نکنم میزنه بیرون
نکته : البته سورس این درست این برنامه رو دارم اما بنا به دلایلی مفصل که در حال اینجانب حقیر نمی گنجد مجبورم از این الگوریتم استفاده کنم(البته برنامه چندتا مشکل داره میدونم اما گفتم که):متفکر:
Timer1.interval=1

کد :
Public Class Form1

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

Dim h, w As Single
Dim intspeed1, intspeed2 As Integer


intspeed1 = 5 : intspeed2 = 5



h = (My.Computer.Screen.WorkingArea.Height) / 2
w = (My.Computer.Screen.WorkingArea.Width) / 2






With Me
'part1
If (.Top <= h) And (.Left >= w) Then
.Top += intspeed1 : .Left += intspeed2

'part2
ElseIf (.Top <= h) And (.Left <= w) Then
.Top -= intspeed1 : .Left += intspeed2

'part3
ElseIf (.Top >= h) And (.Left <= w) Then
.Top -= intspeed1 : .Left -= intspeed2

'part4
ElseIf (.Top >= h) And (.Left >= w) Then
.Top += intspeed1 : .Left -= intspeed2


End If

End With


End Sub




Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.MaximizeBox = False
Me.TopMost = True
Me.ShowInTaskbar = False
End Sub

Public Sub New()

' This call is required by the Windows Form Designer.
InitializeComponent()
Me.StartPosition = FormStartPosition.WindowsDefaultLocation
' Add any initialization after the InitializeComponent() call.

End Sub
End Class

ضمنا اینم بگم که برنامه یک عکس که تو صفحه نمایش به در و دیوار میخوره همون MoveIcon

aminhackerman
دوشنبه 29 آذر 1389, 22:20 عصر
آقا یعنی سوال ما اینقدر خیط بود :گریه:

omid-vbAuto
دوشنبه 29 آذر 1389, 22:32 عصر
آقا یعنی سوال ما اینقدر خیط بود :گریه:

حداقل برنامتو بزار تا ببینیم مشکلت چیه!

aminhackerman
دوشنبه 29 آذر 1389, 23:17 عصر
بفرمایین :
63881

omid-vbAuto
سه شنبه 30 آذر 1389, 02:16 صبح
63885

دوست عزیز من برنامه رو از شالوده تغییر دادم.اما به پیش فرضات دست نزدم.

از این برنامه می تونی به عنوان یه ویروس دسکتاپی هم استفاده کنی (البته یکم باید کد نویسی بکنی :شیطان:)

حتی میشه با کمی دست کاری در کداش به عنوان یه اسکرین سیور هم استفاده کرد.

حرکات توپ به صورت قانون فیزیک هستش.و کاملا داخل دسکتاپ رخ میده.

دوستان اگر نظری در مورد این برنامه دارن بفرمایند.

aminhackerman
سه شنبه 30 آذر 1389, 10:24 صبح
63885

دوست عزیز من برنامه رو از شالوده تغییر دادم.اما به پیش فرضات دست نزدم.

از این برنامه می تونی به عنوان یه ویروس دسکتاپی هم استفاده کنی (البته یکم باید کد نویسی بکنی :شیطان:)

حتی میشه با کمی دست کاری در کداش به عنوان یه اسکرین سیور هم استفاده کرد.

حرکات توپ به صورت قانون فیزیک هستش.و کاملا داخل دسکتاپ رخ میده.

دوستان اگر نظری در مورد این برنامه دارن بفرمایند.

دمتگرم من خودم هی دنبال راهی بودم که وقتی خواست بزنه بیرون بره اون دستور دیگرو اجرا کنه اما نمی شد دمتگرم خیلی قشنگ با اون C ها کنترل کردی :تشویق:
فقط اون قضیه قانون فیزیک رو توضیح بدی فکر کنم مفید باشه (من خودم روش دارم کار می کنم ساده و تمیزه اما گفتم شاید واسه بقیه خوب باشه)
بازم دمت قیژقیژ

omid-vbAuto
سه شنبه 30 آذر 1389, 10:26 صبح
دمتگرم من خودم هی دنبال راهی بودم که وقتی خواست بزنه بیرون بره اون دستور دیگرو اجرا کنه اما نمی شد دمتگرم خیلی قشنگ با اون C ها کنترل کردی :تشویق:
البته جای کار داره که زیباتر هم بشه.مثلا اضافه کردن صدا و ...

aminhackerman
سه شنبه 30 آذر 1389, 10:34 صبح
البته جای کار داره که زیباتر هم بشه.مثلا اضافه کردن صدا و ...
آره خدایی الان دارم کدات رو می بینم میخام عمقی بفهمم اون C ها رو با چه ذهنیتی آوردی چون فقط فهمیدن اینکه چه کاره ای شده لذت نداره عمق اون طرز تفکره مهمه مثلا تو اونجوری کنترل کردی من دسکتاپ رو 4 بخش کلی توفیر داره
حالا میخام هم روش صدا بزارم هم اگه باشه وقتی میخوره به دیواره ها یک عکس دیگه یا با یک راهکاری توپ رو فشرده نشون بدم یعنی انگار رفته باشه
sound تیک تیک که به دیوار میخوره رو اگه کسی داره بزاره و گرنه جوینده یابنده :لبخند:

omid-vbAuto
سه شنبه 30 آذر 1389, 11:03 صبح
آره خدایی الان دارم کدات رو می بینم میخام عمقی بفهمم اون C ها رو با چه ذهنیتی آوردی چون فقط فهمیدن اینکه چه کاره ای شده لذت نداره عمق اون طرز تفکره مهمه مثلا تو اونجوری کنترل کردی من دسکتاپ رو 4 بخش کلی توفیر داره
حالا میخام هم روش صدا بزارم هم اگه باشه وقتی میخوره به دیواره ها یک عکس دیگه یا با یک راهکاری توپ رو فشرده نشون بدم یعنی انگار رفته باشه
sound تیک تیک که به دیوار میخوره رو اگه کسی داره بزاره و گرنه جوینده یابنده :لبخند:

من هم اولش می خواست دسکتاپ رو به 4 قسمت تقسیم کنم.اما دیدم اکه این کارو بکنم باید موارد زیر رو هم چک کنم که برنامه هم سنگین می شد و هم کدهاش بالا می رفت:

1-اول از همه خود تقسیم کردنه مهمه (یعنی اگه توپ بین دو ناحیه بود روی خطشون باید کدهای بالائی می نوشتی که از کدومی داره می ره به کدومی و توپ جزء کدوم ناحیه حساب بشه.)
2-بعدش هم با تقسیم کردن دسکتاپ به چهار قسمت ، تو هر قسمتش تازه می رسیم به اون کدهائی که من نوشتم! پس شما با این روش می بایست این کدها رو حداقل 4 بار برا 4 نااحیه می نوشتی که توجیه نداشت.

ببینید شما باید حداقل چهارتا عکس (هر چقدر می خواهی واقعی تر به نظر برسه 4XN ) برای توپ له شده درست کنید.به طور مثال برای ساده ترین حالت شما باید همون عکس توپ رو از چهار جهت جغرافیایی له کنی و نحوه ی تغییر این عکس ها را به خوبی کد کنی.(برای له کردن عکس به فوتوشاپ مراجعه کنید) و برای صدا هم زیاد مهم نیست یه صدای ضربه ای (مانند یه Base )بذارید کافیه.تازه می تونید در دو طرف دسکتاپ هم دروازه های مناسبی بذارین تا وقتی توپ وارد اون بشه Goal بشه.

aminhackerman
سه شنبه 30 آذر 1389, 11:22 صبح
من هم اولش می خواست دسکتاپ رو به 4 قسمت تقسیم کنم.اما دیدم اکه این کارو بکنم باید موارد زیر رو هم چک کنم که برنامه هم سنگین می شد
آقا اینم برنامه با سورسی متفاوت اما به زبان #C
63892
شرمنده زیاد سوال می کنم اما شما اون کدا رو طبق قاعده خاصی زدی یا آزمایش و خطا ؟
بازم شرمنده

omid-vbAuto
سه شنبه 30 آذر 1389, 11:42 صبح
آقا اینم برنامه با سورسی متفاوت اما به زبان #C
63892
شرمنده زیاد سوال می کنم اما شما اون کدا رو طبق قاعده خاصی زدی یا آزمایش و خطا ؟
بازم شرمنده





شما اون کدا رو طبق قاعده خاصی زدی یا آزمایش و خطا ؟






دوست عزیز اگه به پستای قبلی نگاه کرده بودی گفته بودم بر اساس قانون فیزیکه(این از ذهنیت)اگه بیشتر می خواهی بدونی برو فیزیک هالیدی قسمت تکانه ها.

aminhackerman
سه شنبه 30 آذر 1389, 12:57 عصر
دوست عزیز اگه به پستای قبلی نگاه کرده بودی گفته بودم بر اساس قانون فیزیکه(این از ذهنیت)اگه بیشتر می خواهی بدونی برو فیزیک هالیدی قسمت تکانه ها.

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

omid-vbAuto
سه شنبه 30 آذر 1389, 13:14 عصر
خوانده بودم اما فکر کردم فیزیکت خوبه کلی گفتی :لبخند:
آخه میدونی الگوریتم واضح بود اما یک حالتی داشت که معلوم بود طبق یک اساسیه تا آزمون و خطا
خلاصه شرمنده اگه ناراحت کردم
ممنون

نه بابا چه نارحت شدنی !!!.خوشحال هم می شم.اگه سوال دیگه ای هم دارین در حد توانم در خدمتتونم.

aminhackerman
سه شنبه 30 آذر 1389, 22:16 عصر
نه بابا چه نارحت شدنی !!!.خوشحال هم می شم.اگه سوال دیگه ای هم دارین در حد توانم در خدمتتونم.
لطف عالی مستدام
نمیدونم اگه اینو این جا بپرسم عیب نداره
اما من یک سوال قدیمی دارم که جوابشو پیدا نکردم
تایمر که بر حسب میلی ثانیه است
Timer.interval=10
بعد با این حساب رویدادا تایمر اگه 100 بار اجرا شه میشه 1 ثانیه من از این قاعده هر وقت برای صدم ثانیه استفاده کردم کورنومترم عقب افتاده:متعجب:(یکی دوتا برنامه هم دیدم رو سیستم بازم از کورنومتر فیزیکی عقب می افتادن) اگه دلیلشو می دونین ما رو هم راهنمایی کنین خیلی حال دادین :لبخند:

omid-vbAuto
سه شنبه 30 آذر 1389, 22:57 عصر
لطف عالی مستدام
نمیدونم اگه اینو این جا بپرسم عیب نداره
اما من یک سوال قدیمی دارم که جوابشو پیدا نکردم
تایمر که بر حسب میلی ثانیه است
Timer.interval=10
بعد با این حساب رویدادا تایمر اگه 100 بار اجرا شه میشه 1 ثانیه من از این قاعده هر وقت برای صدم ثانیه استفاده کردم کورنومترم عقب افتاده:متعجب:(یکی دوتا برنامه هم دیدم رو سیستم بازم از کورنومتر فیزیکی عقب می افتادن) اگه دلیلشو می دونین ما رو هم راهنمایی کنین خیلی حال دادین :لبخند:


دوست عزیز علتش اینه که وقتی تایمر برا اولین بار تیک می کنه می آد دستورات داخل تایمر رو اجرا میکونه حالا این افزایش زمان به خاطر بررسی شروط داخل تایمره اگه دقت کرده باشین تو برنامه ی خارج نشدن توپ از صفحه چندین شرط رو وضع کردیم.البته درسته که در هر لحظه فقط یکی از شرطامون اجرا میشه ولی باز کامپیوتر انها رو بررسی می کنه و اجرا نمی کنه که همیه این کارا سرعت را پایین می آره.


امیدوارم خوب و مفید توضیح داده باشم.موفق باشید

aminhackerman
پنج شنبه 02 دی 1389, 12:09 عصر
دوست عزیز علتش اینه که وقتی تایمر برا اولین بار تیک می کنه می آد دستورات داخل تایمر رو اجرا میکونه حالا این افزایش زمان به خاطر بررسی شروط داخل تایمره اگه دقت کرده باشین تو برنامه ی خارج نشدن توپ از صفحه چندین شرط رو وضع کردیم.البته درسته که در هر لحظه فقط یکی از شرطامون اجرا میشه ولی باز کامپیوتر انها رو بررسی می کنه و اجرا نمی کنه که همیه این کارا سرعت را پایین می آره.


امیدوارم خوب و مفید توضیح داده باشم.موفق باشید
من هم همین فکر رو کردم اما فکر می کردم CPU تو سه سوت دستورات رو اجرا می کنه اگه اینجوری باشه با این حساب هیچ کورنومتری درست کار نمی کنه
بعدشم الگوریتم درستی نمیشه پیدا کرد واسش چون اگه رو یک سیستم جواب بده رو سیستم دیگه با CPU متفاوت جواب قطعی حاصل نمیشه

omid-vbAuto
پنج شنبه 02 دی 1389, 13:21 عصر
من هم همین فکر رو کردم اما فکر می کردم CPU تو سه سوت دستورات رو اجرا می کنه اگه اینجوری باشه با این حساب هیچ کورنومتری درست کار نمی کنه
بعدشم الگوریتم درستی نمیشه پیدا کرد واسش چون اگه رو یک سیستم جواب بده رو سیستم دیگه با CPU متفاوت جواب قطعی حاصل نمیشه


من هم با شما موافقم.ولی همون طور که میدونید ابر رایانه ها هم در چند سال ،چند ثانیه خطا می کننند . حالا سیستم های خانگی ما که جای خود داره.

تفاوت ها هم انقدر ناچیز هستند که برا انسان قابل درک نیستش.شاید در حدود میلیونیم ثانیه یه اختلافاتی داشته باشن.شاید!