سلام
كمك مي خوام يه ماشين حساب لمسي درست كنم چجور مي تونم پكسل ها رو مثلا برا يه دكمه شبيه سازي كنم
طفا يكي راهنماييم كنه :11:
سلام
كمك مي خوام يه ماشين حساب لمسي درست كنم چجور مي تونم پكسل ها رو مثلا برا يه دكمه شبيه سازي كنم
طفا يكي راهنماييم كنه :11:
دوست عزیز منظورت چیه؟
اینجا انجمن ویژوال بیسیکه نه اختراعات و فناوری!!!!!!!
دوست گلم مظور منم اختراع نبود:11:نقل قول:
منظورم اينه مي خوام يه پروژه بنويسم مثلا يه كليد كه لمسي باشه مقياس دكمه رو از طريق پيكسل محاسبه كنيم...
كه روي مانيتور لمسي راحت جواب بده...
مثلا ساخت يك ماشين حساب لمسي(كه من فقط طريقه ي عمل رو با استفاده از پيكسل ها مي خوام)
كسي مي تونه ،مي دون؟
:11:
سلامنقل قول:
تا جایی که من دیدم قلم نوری ها و مانیتور های لمسی همه همون کار ماوس رو میکنن . یعنی فکر نمیکنم نیازی داشته باشید که کد خاصی بنویسید .
دوست عزیز ممنونم من می خوام بدونه استفاده از شی خاصی روی قسمتی از فرم ( با پیکسل) یه مکان خاص شبیه به دکمه درست کنم...نقل قول:
استاد منظورش اینه که از هوش مصنوعی تویه فرم اسفاده کنیم
:11:
سلام.
اگر منظور شما را درست فهمیده باشم در ساده ترین حالت از یک فرمول ساده برای تشخیص اشاره بر روی یک شی روی فرم استفاده میشود که فرمول بصورت زیر است:
فرض کنید شما یک مربع 20 در 20 پیکسل بر روی فرم رسم کردید که از مکان 0،0 روی فرم شروع شده و در مکان 20،20 روی فرم ختم میشود حالا میخواهید اگر اشاره گر ماوس یا هر نوع اشاره دیگری به این مربع صورت گرفت این مربع مانند یک دکمه عمل کند
برای این کار باید از یک دستور if با شرط زیر استفاده کنید.
---------------کد:mPos.x >= Rect.x1 And mPos.y >= Rect.y1 And mPos.x <= Rect.x2 and mPos.y <= Rect.y2
mPos.x = مکان فعلی محور x اشاره گر ماوس بر روی فرم و نه بر روی کل صفحه.
mPos.y = مکان فعلی محور y اشاره گر ماوس بر روی فرم و نه بر روی کل صفحه.
Rect.x1 = مکان محور x در نقطه شروع(در مثال ما یعنی 0)
Rect.y1 = مکان محور y در نقطه شروع(در مثال ما یعنی 0)
Rect.x2 = مکان محور x در نقطه پایان(در مثال ما یعنی 20)
Rect.y2 = مکان محور y در نقطه پایان(در مثال ما یعنی 20)
----------------
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
در صورت درست بودن شرط بالا یعنی اشاره گر ماوس در حال حاضر بر روی مکان مورد نظر شما قرار گرفته.
روش های دیگری هم هست که کمی پیچیده تر هستند و در شرایطی استفاده میشود که مثلا اگر شکل شما 4 ضلعی نباشد و یا اصلا یک 4 ضلعی با یک زاویه چرخش باشد و ...
اگر هر قسمتی را متوجه نشدید بگید تا بنده توضیح بدم.
موفق باشید.
نقل قول:
خیلی خیلی گلید .ممنونم آره آره همینه :11::11::11:
از همین راه هستش فقط شما که این همه زحمت کشیدیدت یه خواهش دیگه هست به یک دکمه رو روی یک فرم به همین صورت برام درست کنید و فایل پروژه رو برام آپ کنید:40:
ممنونم خیلی دنبالش گشتم نمی دونم چجور تشکر کنم :11:
با عرض شرمندگی بنده به VB6 فعلا دسترسی ندارم و اگر در عکس هم ببینید از یک سیستم عامل دیگه استفاده می کنم.اما میتونید از دیگر دوستان درخواست کنید.
بنده هم سعی میکنم اگر به VB6 دسترسی پیدا کردم حتما کمکتون کنم.
موفق باشید.
آها ممنونم امیدوارم کسی پیدا شه، من لازمش دارم... :10:نقل قول:
خیلی ممنونم :11:
با توجه به اون چيزي كه دوست عزيزمون جناب god of war 2 گفتند... نوشتن اين برنامه به دو صورت امكان پذيره...!؟!نقل قول:
* روش اول استفاده از توابع سيستميه كه يه كم پيچيده ست...!؟! (با استفاده از تابع GetCursorPos ميشه اين كار رو انجام داد...!؟! اگه خواستيد بگيد تا بيشتر توضيح بدم...!؟!)
* روش دوم هم اينه...!؟! :
يه shape به فرمتون اضافه كنيد... و خاصيت BackStyle ش رو برابر 1 قرار بديد... بعد كد هاي زير رو تو قسمت كد نويسي وارد كنيد...!؟!؟!؟!؟!؟!؟!؟!؟!؟!؟!؟! :
اينم سورس برنامه...!؟! :کد:Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If X > Shape1.Left And Y > Shape1.Top _
And X < Shape1.Left + Shape1.Width _
And Y < Shape1.Top + Shape1.Height Then
Shape1.BackColor = vbRed
Else
Shape1.BackColor = vbWhite
End If
End Sub
اميدوارم منظورتون رو درست متوجه شده باشم...!؟! :20:کد:http://up.--------.com/images/jcimu5za929iqc36y17x.zip
اگه جاييش اشكال داشت بگيد تا يكي ديگه براتون بنويسم...!؟! :27:
موفق باشيد...!؟! :46: