Jump to content

GUIGetCursorInfo İle Basit Hover İşlemleri


SimpsoN_Bart
 Share

Recommended Posts

[b][font="Tahoma"]Uzun süre ardından merhaba arkadaşlar bu örnek de GUIGetCursorInfo kullanımını basit olarak bir kaç şekilde sizlere göstereceğim bu kod ile hover işlemleri yapmanız mümkün.Umarım faydalı olur.Örneklere geçelim.[/font][/b]
[b] [/b]
[b][font="Tahoma"][color="#ff0000"]Color Buton Hover[/color][/font][/b]
[b][font="Tahoma"][img]http://i.imgur.com/kLFzQ.jpg[/img][/font][/b]
[b] [/b]
[b][font="Tahoma"][codebox]Global $GREEN = 0x00FF00 ;yeşil
Global $RED= 0xFF0000 ;Kırmızı
Global $TEXT = "RED"

Local $GUI = GUICreate("Color Buton Hover", 300,300)
Local $BUTON = GUICtrlCreateButton("Button", 72, 64, 113, 41)
GUICtrlSetFont(-1, 10, 800, 0, "Segoe UI")
GUICtrlSetBkColor($BUTON, $RED)
GUISetState()

While 1
$MSG = GUIGetMsg()
$GGCI = GUIGetCursorInfo()
Select
Case $MSG = -3
ExitLoop
Case $MSG = $BUTON
MsgBox(64, "Test", "Butona Tıkladınız." & @CRLF & "Enter ile aynı işlemi yapabilirsiniz.")
EndSelect
If $GGCI[4] = $BUTON And $TEXT = "RED" Then
GUICtrlSetBkColor($BUTON, $GREEN)
$TEXT = "GREEN"
ElseIf $GGCI[4] <> $BUTON And $TEXT = "GREEN" Then
GUICtrlSetBkColor($BUTON, $RED)
$TEXT = "RED"
EndIf
WEnd

[/codebox][/font][/b]
[b] [/b]
[b][font="Tahoma"][color="#ff0000"]JPG Hover[/color][/font][/b]
[font="Tahoma"][color="#ff0000"][b]
[/b][/color][/font][img]http://i.imgur.com/bTkAD.jpg[/img]

[codebox]Global $FIRST_PIC = @ScriptDir & "\1.JPG"

Global $SECOND_PIC = @ScriptDir & "\2.JPG"
Global $THIRD_PIC = @ScriptDir & "\3.JPG"

Local $GUI = GUICreate("Pıcture Hover",300,300)
Local $FIRST = GUICtrlCreatePic($FIRST_PIC, 0, 0, 100, 100)
GUICtrlSetCursor(-1,0)
GUICtrlSetState(-1, 128)
Local $SECOND = GUICtrlCreatePic($SECOND_PIC, 0, 0, 100, 100)
GUICtrlSetCursor(-1,0)
GUICtrlSetState(-1, 32)
Local $THIRD = GUICtrlCreatePic($THIRD_PIC, 0, 0, 100, 100)
GUICtrlSetCursor(-1,0)
GUICtrlSetState(-1, 32)
GUISetBkColor(0xFFFFFF);BEYAZ RENK
GUISetState()

While 1
$MSG = GUIGetMsg()
If $MSG = -3 Then ExitLoop
$GGCI = GUIGetCursorInfo($GUI)
If $GGCI[4] = $FIRST Then
GUICtrlSetState($SECOND, 16)
GUICtrlSetState($FIRST, 32)
Sleep(100)
$GGCI = GUIGetCursorInfo($GUI)
While $GGCI[4] = $SECOND
If GUIGetMsg() = $SECOND Then _MY_FUNC()
$GGCI = GUIGetCursorInfo($GUI)
WEnd
GUICtrlSetState($THIRD, 32)
GUICtrlSetState($SECOND, 32)
GUICtrlSetState($FIRST, 16)
EndIf
WEnd

Func _MY_FUNC()
GUICtrlSetState($THIRD, 16)
MsgBox(32, "Test", "Butona Tıkladınız..", 3)
;... işlemler
EndFunc ;==>_MY_FUNC

[/codebox]
[font="Tahoma"][color="#ff0000"][b]
[/b][/color][/font] [font="Tahoma"][color="#8b0000"][b]Link Hover[/b][/color][/font]
[font="Tahoma"][b]
[/b][/font][img]http://i.imgur.com/BBT6D.jpg[/img]

[codebox]

Global $SET_1 = False
Global $SET_2 = False
Global $BLACK = 0x000000
Global $BLUE = 0x0000FF

Local $GUI = GUICreate("Link Hover", 300, 300)
Local $LINK = GUICtrlCreateLabel("www.tnctr.com", 50, 80, 200, 30)
GUICtrlSetCursor(-1, 0)
GUICtrlSetFont(-1, 16, 100, 4)
GUISetState()


While 1
$msg = GUIGetMsg()
Switch $msg
Case -3
ExitLoop
Case $LINK
ShellExecute("http://www.tnctr.com")
EndSwitch
Local $GGCI = GUIGetCursorInfo($GUI)
If $GGCI[4] = $LINK Then
If Not $SET_1 Then
GUICtrlSetColor(-1, $BLUE)
$SET_1 = True
$SET_2 = False
EndIf
Else
If Not $SET_2 Then
GUICtrlSetColor(-1, $BLACK)
$SET_1 = False
$SET_2 = True
EndIf
EndIf
WEnd
[/codebox][font="Tahoma"][color="#ff0000"][b]
[/b][/color][/font]
[font="Tahoma"][color="#ff0000"][b]Icon Hover[/b][/color][/font]
[font="Tahoma"][color="#ff0000"][b]
[/b][/color][/font][img]http://i.imgur.com/m0XkS.jpg[/img][font="Tahoma"][color="#ff0000"][b]
[/b][/color][/font]
[font="Tahoma"][color="#ff0000"][/color][/font][codebox]Local $GUI = GUICreate("Buton Hover", 300, 300)
Local $BUTTON = GUICtrlCreateButton("", 5, 5, 40, 40, 0x0040)
GUICtrlSetImage(-1, "shell32.dll", -110)
GUISetState()

Global $OVER = $BUTTON

While 1
$MSG = GUIGetMsg()
Switch $MSG
Case -3
ExitLoop
Case $BUTTON
MsgBox(64, "Test", "Butona Tıkladınız..") ;BURAYA İSTEĞE GÖRE FONKSİYON DA YAZILABİLİR SİZE KALMIŞ..
Case Else
Local $GGCI = GUIGetCursorInfo($GUI)
If $GGCI[4] = $BUTTON And $OVER <> $BUTTON Then
GUICtrlSetImage($BUTTON, "shell32.dll", -11)
$OVER = $BUTTON
ElseIf $GGCI[4] <> $BUTTON And $OVER = $BUTTON Then
GUICtrlSetImage($BUTTON, "shell32.dll", -10)
$OVER = $GGCI[4]
EndIf
EndSwitch
WEnd[/codebox]

[font="Tahoma"][color="#ff0000"][b]Source Code:[/b][/color][/font]
[font="Tahoma"][color="#ff0000"][b]
[/b][/color][/font][code]http://crypt-it.com/s/7B271W[/code][font="Tahoma"][color="#ff0000"][b]
[/b][/color][/font]
[font="Tahoma"][b]Resimler de gördüğünüz gibi bir kaç şekilde hover işlemleri yapılabilir tabi geliştirme size kalmış bir durum.Pakette Kaynak Kodlar mevcut incelemeyi unutmayın.Saygılarımla..[/b][/font]
[font="Tahoma"][b]
[/b][/font]
[font="Tahoma"][b][img]http://i.imgur.com/CBZvl.png[/img]
[/b][/font] Edited by SimpsoN_Bart
Link to comment
Share on other sites

[b]@mesale0077,[/b]
[b]Png ile yapmak için SetBitmap ve _GDIPlus_ImageLoadFromFile komutlarını aktif bir şekilde kullanmak gerekir.Biraz araştırma yapar buraya yazarım.[/b]
[b]
[/b]
[b]@radyofon;[/b]
[b]Hover, mouse ile herhangi bir gui elemanının(buton,label vs) üzerine gelindiği zaman ki olaydır. Kısaca mouse eventleri diyebiliriz (onclick vs). Ayrıca forumda böyle bu tip konular açıldı blue_life açmıştı diye hatırlıyorum sanırım görmediniz biraz araştırma yapmanızı tavsiye ederim.Umarım açıklayıcı olmuştur.[/b]

Edited by SimpsoN_Bart
Link to comment
Share on other sites

[b]@MeHMeTBen;[/b]
[b]
[/b]
[b]Konuyu editlerken ara da kaynamış olmalı gözümden kaçmış kaynak kodları içinde hepsi var ama yinede düzeltiyorum.Uyarın için teşekkürler :)[/b]

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...