ورود

View Full Version : سوال: کسی می تونه این برنامه رو تکمیل کنه



Alireza Pro
جمعه 10 شهریور 1391, 17:05 عصر
سلام:خجالت:

این برنامه ی منه البته کار نمی کنه می خواستم اگه کسی بلده برام کاملش کنه یا کدشو بزاره یا برنامه رو بزاره واسه دانلود

92114

شرایط برنامه :

در فرم 2 هیچ کدی نباید نوشته شود

در فرم 1 طوری برنامه نویسی شود که بعد از کلیک بر روی دکمه ی فرم 1 و رفتن به فرم 2 و کلیک بر روی دکمه ی فرم 2 دستوره تکست باکس فرم 1 اجرا شود

بعضی از دوستان در جریان پروژه ای که قبل از این ازشون سوال کرده بودم هستند این قسمت دوم پروژه است

Alireza Pro
جمعه 10 شهریور 1391, 17:11 عصر
ببخشید فقط اینو در نظر بگیرید که من مبتدی هستم خیلی سنگین برنامه ننویسید

Veteran
جمعه 10 شهریور 1391, 17:48 عصر
کد های فرم 1
+ تایمر
Private Declare Function GetCursorPos Lib "user32.dll" (lpPoint As POINTAPI) As Long
Private Declare Function WindowFromPoint Lib "user32.dll" (ByVal xPoint As Long, ByVal yPoint As Long) As Long
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Private Type POINTAPI
X As Long
Y As Long
End Type
Private Mus As POINTAPI
Private Sub Command1_Click()
Form2.Show 1
Form2.ScriptControl1.AddCode (Text1)
End Sub
Private Sub Timer1_Timer()
GetCursorPos Mus
If Form2.Command1.hWnd = WindowFromPoint(Mus.X, Mus.Y) Then
If GetAsyncKeyState(1) = -32767 Then
Form2.ScriptControl1.AddCode (Text1)
End If
End If
End Sub

m.4.r.m
جمعه 10 شهریور 1391, 18:17 عصر
اصلاح شد ببین درست کار می کنه

Alireza Pro
جمعه 10 شهریور 1391, 18:39 عصر
سلام
اون script control رو لازم نیست تو هر 2 تا فرم بزاریش
اون رو فقط توی فرم 2 بزار و این دستور رو توی کامند همون فرم بزار

Form2.ScriptControl1.AddCode Form1.Text1.Text

اینکه میگی توی فرم 2 نباید چیزی نوشته بشه هم شدنیه با API، ولی مطمئنی معلمتون از شما چنین چیزی خواسته ؟


نه معلممون که نه بابا من ترم اول دانشگاه هستم اشتباهی به استادا می گم معلم

الانم نمی دونم ای دستوری که می گید چیه ؟

Alireza Pro
جمعه 10 شهریور 1391, 18:41 عصر
اصلاح شد ببین درست کار می کنه

نه این درست کار میکنه ولی نباید تو فرم 2 چیزی نوشته بشه

Alireza Pro
جمعه 10 شهریور 1391, 18:47 عصر
کد های فرم 1
+ تایمر
Private Declare Function GetCursorPos Lib "user32.dll" (lpPoint As POINTAPI) As Long
Private Declare Function WindowFromPoint Lib "user32.dll" (ByVal xPoint As Long, ByVal yPoint As Long) As Long
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Private Type POINTAPI
X As Long
Y As Long
End Type
Private Mus As POINTAPI
Private Sub Command1_Click()
Form2.Show 1
Form2.ScriptControl1.AddCode (Text1)
End Sub
Private Sub Timer1_Timer()
GetCursorPos Mus
If Form2.Command1.hWnd = WindowFromPoint(Mus.X, Mus.Y) Then
If GetAsyncKeyState(1) = -32767 Then
Form2.ScriptControl1.AddCode (Text1)
End If
End If
End Sub


عالیه دستتون درد نکنه همین جواب می ده فقط می شه توضیح بدیدن کلا این کد چی کار می کنه؟؟
اگه استاده ازم پرسید بتونم جواب بدم :X

Veteran
جمعه 10 شهریور 1391, 19:00 عصر
هندل شی که موس روشه رو با هندل کامند باتن فرم 2 چک میکنه اگه = بود یعنی موس روی کاند باتن فرم 2 هست.بعد اگر کلیک کرد دستورات اجرا میشه.
Mus.X, Mus.Y
مختصات فعلی موس

Form2.Command1.hWnd
هندل کاند باتن
اگر کلیک شد شرط برقرار میشه
If GetAsyncKeyState(1) = -32767 Then
Form2.ScriptControl1.AddCode (Text1)
End If


WindowFromPoint(Mus.X, Mus.Y)
===
هندل شی ایی که موس روی اونه رو برمیگردونه