Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Pytanie] Podświetlanie kontrolek


Rekomendowane odpowiedzi

Opublikowano

Witam. Chciałbym aby ktoś powiedział mi jak zrobić żeby po nakierowaniu kursorem na jakiś obrazek w gui zmieniał się on na inny. Dam "Lubie to"

Cipka - Najlepszy silnik na świecie. Działa z tłokiem każdej średnicy, wbudowana funkcja samosmarowania, odpalasz jednym palcem i co miesiąc sam się wymienia olej. Szkoda tylko że ma taki pojebany komputer pokładowy.

Opublikowano

Opt("MouseCoordMode",2)

 

Func _IsMouseOverControl($WinTitle,$WinText,$Control)

$C = ControlGetPos($WinTitle,$WinText,$Control)

If @error Then

SetError(-1)

Return 0

Else

$C_X = $C[0]

$C_Y = $C[1]

$C_Width = $C[2]

$C_Height = $C[3]

 

$M = MouseGetPos()

$M_X = $M[0]

$M_Y = $M[1]

If WinActive($WinTitle,$WinText) And (($M_X >= $C_X And $M_X <= $C_X + $C_Width) And ($M_Y >= $C_Y And $M_Y <= $C_Y + $C_Height)) Then

Return 1

Else

Return 0

EndIf

EndIf

EndFunc

Masz funkcję która zwraca ci czy myszka jest nad daną kontrolką. Resztę zrób sobie sam.
846331404756772371599.jpeg
Opublikowano

Dzięki ale jak daje w pętli:


While 1
If MouseOnControl($GUI,$pic) Then

GUICtrlSetImage($pic,"pic2.bmp")

Else

GUICtrlSetImage($pic,"pic1.bmp")

EndIf
WEnd

To obrazek mi miga cały czas jak ruszam kursorem

Cipka - Najlepszy silnik na świecie. Działa z tłokiem każdej średnicy, wbudowana funkcja samosmarowania, odpalasz jednym palcem i co miesiąc sam się wymienia olej. Szkoda tylko że ma taki pojebany komputer pokładowy.

Opublikowano

Dzięki ale jak daje w pętli:


While 1

If MouseOnControl($GUI,$pic) Then GUICtrlSetImage($pic,"pic2.bmp") Else GUICtrlSetImage($pic,"pic1.bmp")

EndIf

WEnd

 

To obrazek mi miga cały czas jak ruszam kursorem

Nie za bardzo się orientuje ale czy napewno dobrze podałeś parametry funkcji?

 

($WinTitle,$WinText,$Control)

($GUI,$pic)

Może $pic to ma być jako $Control a nie Text

1387536187-U112334.png

Jeśli Ci pomogłem mógłbyś wynagrodzić lajkiem :)

Opublikowano

Dobrze podałem bo zmieniłem twoją funkcje -.-:

Func MouseOnControl($WinTitle,$Control)
    $C = ControlGetPos($WinTitle,"",$Control)
    If @error Then
        SetError(-1)
        Return 0
    Else
        $C_X        = $C[0]
        $C_Y        = $C[1]
        $C_Width    = $C[2]
        $C_Height   = $C[3]

        $M          = MouseGetPos()
        $M_X        = $M[0]
        $M_Y        = $M[1]
        If WinActive($WinTitle) And (($M_X >= $C_X And $M_X <= $C_X + $C_Width) And ($M_Y >= $C_Y And $M_Y <= $C_Y + $C_Height)) Then
            Return 1
        Else
            Return 0
        EndIf
    EndIf
EndFunc

Cipka - Najlepszy silnik na świecie. Działa z tłokiem każdej średnicy, wbudowana funkcja samosmarowania, odpalasz jednym palcem i co miesiąc sam się wymienia olej. Szkoda tylko że ma taki pojebany komputer pokładowy.

Opublikowano

@ref

Cipka - Najlepszy silnik na świecie. Działa z tłokiem każdej średnicy, wbudowana funkcja samosmarowania, odpalasz jednym palcem i co miesiąc sam się wymienia olej. Szkoda tylko że ma taki pojebany komputer pokładowy.

  • 2 tygodnie później...
Opublikowano

@ref ;d

Cipka - Najlepszy silnik na świecie. Działa z tłokiem każdej średnicy, wbudowana funkcja samosmarowania, odpalasz jednym palcem i co miesiąc sam się wymienia olej. Szkoda tylko że ma taki pojebany komputer pokładowy.

Opublikowano

@ref

 

Cipka - Najlepszy silnik na świecie. Działa z tłokiem każdej średnicy, wbudowana funkcja samosmarowania, odpalasz jednym palcem i co miesiąc sam się wymienia olej. Szkoda tylko że ma taki pojebany komputer pokładowy.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...