View Full Version : مبتدی: تغییر رنگ تکست باکس
omidparkour
دوشنبه 19 فروردین 1392, 18:13 عصر
سلام
میخوام کدی بنویسم که وقتی داخل تکس باکس کلیک کردیم رنگش عوض بشه و وقتی روی یک چیز دیگه روی فرم کلیک کردیم به حالت عادی برگرده
لطفا راهنمایی کنین
فقط تورو خدا تو سطح خودم
مبتدی
soheila2012
دوشنبه 19 فروردین 1392, 18:45 عصر
Private Sub Text1_Click()
Text1.BackColor = vbRed
End Sub
این برای وقتیه که روی تکست کلیک کردی رنگش قرمز بشه
و
Private Sub Form_Click()
Text1.BackColor = vbWhite
End Sub
اینم برای وقتیه که روی فرم کلیک کردی به رنگ اول برگرده
حالا میتونی روی فرم دکمه ی بزاری و این کد رو توش بنویسی
omidparkour
دوشنبه 19 فروردین 1392, 18:58 عصر
خب این رو که میدونم میخوام هر جایی کلیک کرد
این فقط روی فرم کلیک کنه به حالت اولیه برمیگرده
اگه اینجوری بخوام درست کنم که باید از این 1 خط کد 50 تا جا کپی کنم :لبخند:
soheila2012
دوشنبه 19 فروردین 1392, 19:03 عصر
خب دیگه چه جاهایی میخوای که باعث بشه تغییر رنگ بده؟؟
omidparkour
دوشنبه 19 فروردین 1392, 19:13 عصر
هر جایی کلیک کرد
روی کاماند باتن ، تکست دیگه ، فرم ،لیبل و....
SlowCode
دوشنبه 19 فروردین 1392, 19:14 عصر
سلام
ساده ترین راه اینه که به تکست باکس هات ایندکس بدی بعد بنویسی:
Private Sub Text1_Click(Index As Integer)
For i = 0 To Text1.UBound
Text1(i).BackColor = vbWhite
Next
Text1(Index).BackColor = vbRed
End Sub
Private Sub Text1_LostFocus(Index As Integer)
Text1(Index).BackColor = vbWhite
End Sub
روی کاماند باتن ، تکست دیگه ، فرم ،لیبل و....
از رویداد Lostfocus استفاده کن، البته لیبل رو اشتباه گفتی چون فوکوس نمیگیره.
setroyd
دوشنبه 19 فروردین 1392, 22:38 عصر
چون پارکور کاریو بچه اقایی هستیو هم ورزشیم بهت میگم این کار روش درستی نیست چون غیر استاندارد Pm بده کار با api رو بهت یاد بدم که با 2 خط چیزی بنویسی که کار 100 خطو بکنه
Private Declare Function WindowFromPoint Lib "user32" (ByVal xPoint As Long, ByVal yPoint As Long) As Long
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Type POINTAPI
x As Long
y As Long
End Type
Dim p As POINTAPI
Private Sub Form_Load()
Timer1.Enabled = True
Timer1.Interval = 1
End Sub
Private Sub Timer1_Timer()
GetCursorPos p
h = WindowFromPoint(p.x, p.y)
If h = Text1.hWnd Then Text1.BackColor = vbRed Else Text1.BackColor = vbWhite
End Sub
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.