PDA

View Full Version : roll over در vb.net



Hussain<ELite>
شنبه 05 آبان 1386, 23:37 عصر
برای roll over کردن دکمه در وبی من از دو عکس استفاده میکنم . که با دو رویداد mouse Enter و mouse leave عمل roll over را انجام میدهند . این کار و این که لازم است برای هر دکمه کد وارد شود وقت زیادی از من می گیرد آیا دوستان پیشنهاد بهتری دارند ؟
آیا تابع یا Ocx برای این کار وجود دارد؟:متفکر:

amirsajjadi
یک شنبه 06 آبان 1386, 05:26 صبح
سلام
ببین این تابع بدرد کارت میخوره

Private Sub RollOver(ByVal Enter As Boolean, ByVal Btn As Button, Optional ByVal BoldFont As Boolean = False)
If Enter = True Then
Dim E As Image = My.Resources.Enter
'Dim E as Image=image.FromFile("Address File")
Btn.Image = E
If BoldFont = True Then Btn.Font = New Font(Btn.Font, FontStyle.Bold)
ElseIf Enter = FalseThen
Dim L As Image = My.Resources.Leave
'Dim L as Image=image.FromFile("Address File")
Btn.Image = L
If BoldFont = True Then Btn.Font = New Font(Btn.Font, FontStyle.Regular)
End If
End Sub
Private Sub Button1_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.MouseEnter
RollOver(True, sender, True)
EndSub
Private Sub Button1_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.MouseLeave
RollOver(False, sender, True)
EndSub

تابع RollOver سه پارامتر میگیره که یکیش اختیاریه :
پارامتر Enter : اگر مقدار True وارد کنی مانند این است که موس روی باتون رفته و اگر False وارد کنی مثل اینه که موس از روی باتون کنار رفته
پارامتر Btn : باتون مورد نظر را مشخص میکنه
پارامتر BoldFont : این پارامتر اختیاریه و اگر True وارد کنی وقتی موس روی باتون میره فونت باتون کلفت میشه و اگه موس از روی باتون کنار بره فونت دوباره مثل اولش میشه

ضمنا این تابع بطور پیش فرض از توی ریسورس ها تصاویر رو میگیره . اگر بخوای از توی فایل بگیره ، کد گرفتن تصویر از توی ریسورس رو حذف کن و اون کدهایی که علامت Rem خورن رو جایگزین کن

RezaKia
یک شنبه 06 آبان 1386, 07:15 صبح
سلام،

یک Control بساز ولی اونو از Button ارث ببر:


Inherits System.Windows.Forms.Button


حالا کدهای خودتو تو این کنترل بذار و به جای دکمه استاندارد اینو مصرف کن.

کدی که برای RollOver نوشتی رو باید تو این کنترل بذاری.

موفق باشید. :تشویق: