Hogyan hozzunk létre dinamikus változását a gomb színe jelenti VBA - trükkök és technikák, a Microsoft Excel

Nézzük egy másik példa, ami szintén kapcsolódik a reakció, hogy a mozgás az egérrel. Gomb található a lapon, és gondoskodik arról, hogy amikor mozgatni a kurzort a színe megváltozik gombra. Funkcionalitás a következő legyen:

  • a helyét a kurzort a bal felső a színes gombok kell piros;
  • ha a kurzor a felső részén a gombot a gomb színe zöld kell legyen;
  • ha a kurzor a bal alsó gomb - legyen kék;
  • ha a kurzor található, az alsó részén a gomb legyen szürke.

Ahhoz, hogy a kívánt hatást, az eljárás bocsát válaszreakció az egér mozgás példában bemutatott 1.17. Amint kitűnik a szöveget eljárások ingatlan gomb neve Használt C1.

„Listing 1.17. Eljárás megvalósító dinamikus színváltozás gomb Private Sub C1_MouseMove (ByVal gomb As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single) Ha X C1.Width / 2 és Y C1.Height / 2 Ezután C1.BackColor - RGB (0, 0, 255) Else C1.BackColor - RGB (190, 190, 190) End If End Sub

Itt RGB függvénye Visual Basic, amely lehetővé teszi, hogy a színe a tárgy formájában kombinációja a három alapszín a vörös, zöld és kék. Az intenzitás az egyes alapszínek vannak beállítva, mint a három bemeneti paramétereket. Ebben az esetben a minimális értékét a szín intenzitás megegyezik az 0 (ebben az esetben, az összetett színes aktív szín komponens egyszerűen nem áll rendelkezésre), és a maximális vonal 255. A figyelembe vett előre meghatározott maximális intenzitása a vörös és zöld komponensek és a hiányzó kék szín. Egy ilyen kombináció a három alapszín gomb piros.

Mi továbbra is vizsgálja az eljárás szövegének jegyzék. Ha az első feltétel nem teljesül, a program az, hogy ellenőrizze a második feltétel: ElseIf X> C1.Width / 2 és Y. Ha ez teljesül, akkor állítsa be a zöld szín a gomb: C1.BackColor - RGB (0, 255, 0). És ha a második feltétel nem teljesül, a harmadik feltétel ellenőrzik: ElseIf X C1.Height / 2 Ezután.

Kapcsolódó cikkek