Form Transparent (opacitet)

Denne gang vil jeg vise et lille eksempel i Visual Basic. net , som jeg kunne lide, da jeg gjorde første gang. Det er ikke noget vi bruger hver dag, men jeg er sikker på de vil kunne lide, og du vil finde hvor. Jeg kan især godt lide at bruge det, når jeg viser billedet "Om ..." i nogle af mine programmer ...

Det er den gradvise udvikling af en formular, begynder indtil det ser klart på 100%. For at gøre dette skal vi bruge en timer kontrol og Opacitet ejendom formularen.

I det eksempel, vi vil skabe, hvad der to former (Form1 og Form2), den Form1 med en knap, og virkningen af ​​denne knap er at kalde den anden form. Den anden form vises gradvist og vil gøre det samme, når vi lukker. Det skal se ud på billedet nedenfor:

Nå, kommer til at arbejde, haha.

Først Klik på knappen begivenhed for at indlæse den anden form:

 Private Sub Button1_Click (ByVal afsenderen som System.Object, ByVal e Som System.EventArgs) Håndtag Button1.Click
     Som New Form2 Dim vForm2
     vForm2.ShowDialog ()
 End Sub

I den anden Indsæt to komponenter formularens Timer (Timer1 og Timer2). Derefter kopiere følgende kode:

 Form2_Load Private Sub (ByVal afsenderen som System.Object, ByVal e Som System.EventArgs) Håndtag MyBase.Load
     Me.Opacity = 0
     Timer1.Interval = 25
     Timer1.Enabled = True
 End Sub

 Form2_FormClosing Private Sub (ByVal sender As Object, ByVal e Som System.Windows.Forms.FormClosingEventArgs) Håndtag Me.FormClosing
     Timer2.Interval = 25
     Timer2.Enabled = True
     Hvis Me.Opacity> 0 Then
         e.Cancel = True
     End If
 End Sub

 Timer1_Tick Private Sub (ByVal afsenderen som System.Object, ByVal e Som System.EventArgs) Håndtag Timer1.Tick
     Hvis Me.Opacity = 1 Derefter
         Timer1.Enabled = False
     Else
         Me.Opacity Me.Opacity + 0,02 =
         Me.Refresh ()
     End If
 End Sub

 Timer2_Tick Private Sub (ByVal afsenderen som System.Object, ByVal e Som System.EventArgs) Håndtag Timer2.Tick
     Hvis Me.Opacity = 0 Then
         Timer2.Enabled = False
         Me.Close ()
     Else
         Me.Opacity Me.Opacity = - 0,02
         Me.Refresh ()
     End If
 End Sub

Jeg vil kort forklare, hvad den gør:

Windows Forms har en ejendom kaldet Opacity, der gemmer en værdi fra 0 til 1. Denne værdi angiver procentdelen af ​​opaciteten af ​​den form, hvor 1 100% 0 0% uigennemsigtig og uigennemsigtig, hvilket ville være det samme som at sige 100% gennemsigtig. Så med en værdi 0,5 ville have en 50% form, 50% uigennemsigtigt eller transparent (som du har lyst).

Hvad gør en Timer kontrol er at køre kode i Timer Tick begivenheden har miestras sætte ejendom til True, og hver et interval bestemt af Interval ejendommen.
Så har vi Timer1 for, når du åbner formularen (dermed acrivo "Timer1.Enable = True" i Load begivenhed og at Timer2 når den er lukket (På formular afsluttende arrangement).

Nå, jeg vil ikke uddybe forklaringer, fordi koden er kort, og jeg tror, ​​der er meget mere end afklaring.

Hvis du kan lide dette eksempel efterlade en kommentar. Jeg vil gerne vide, hvad de præferencer af mine besøgende.

20 Responses to "formular Transparent (opacitet)"

  1. Bitacoras.com siger:

    Information Bitacoras.com ...

    Rate i Bitacoras.com: Denne gang vil jeg vise et lille eksempel, som jeg kunne lide, da jeg gjorde første gang. Det er ikke noget vi bruger hver dag, men jeg er sikker på de vil kunne lide, og du vil finde hvor. Particularm ...

  2. Fluireemi siger:

    Tak!

  3. Mayang siger:

    GMN negc ... bingung ... dr mana Dulu Mulai Nya ..
    GMN sidebar buat klu kajak?

  4. galvis siger:

    Pyha denne meget Buno impreciono mig haha
    tak

  5. Jose Manuel siger:

    Dette super fine mænd, men hvis du hvis du kan sende mig nye sange til min mail og jeg vil sætte stor pris på mænd ...

  6. rammer medina siger:

    God fedt eftermiddag, vil du ikke have noget eksempel til at styre (enten etiket, knap, ramme) gennemsigtige? tak

  7. Joel siger:

    tak mand er god kode det er hvad estava udseende mand ..... tak

  8. Sebastian siger:

    Mange tak Jamen det ESPLICADO

  9. NazGarB siger:

    Tak bro ac en tid, jeg sad og så dette, opnår pro ACR d ellers q er ikke ønsket, nu den ulejlighed ikke opnåede ACR q ql effekt finder sted, når formularen er indeholdt i en anden waaaaaaaaaaaa.

    Tak

  10. Jhonathan siger:

    Esat godt ....
    men vil gerne vide, hvordan man vise billeder q ua efter den anden, men at desvanescan eller blive transparent opacitet ....

    grasias forhåbentlig hjælpe mig!

  11. Eduardo siger:

    Jeg glæder mig til at gøre dem gennemsigtige eller ændre dens opacitet, enkelt kontrol, ikke formen. nogen kender?.

    • Elisa siger:

      Ikke alle kontroller har denne egenskab, bør du studere hver enkelt kontrol.

  12. Eder siger:

    Er meget god tak

  13. Edwin siger:

    meget god opfølgning er værdsat mere information ..... denne meget interessante

  14. Douglas Salcedo siger:

    Great.

    Jeg kiggede på flere steder explicanción nem at administrere dele af Visual Studio. algunso er meget fattige, andre er ikke klart, og andre tager mange ting og komplicere.

    Jeg vil gerne lykønske dig på din blog. Praktisk, "single" til at forklare og meget hjælpsom.

    Tak du hjalp mig meget.

    Fortsæt med at se dine eksempler til at fuldføre snart et projekt jeg har i mit hus.

    Douglas Salcedo
    Miracle - Ecuador

    • Elisa siger:

      Mange tak for din kommentar, det er den ånd, der driver denne blog: ikke vide alt, men hver artikel skrevet for at forklare det så simpelt og praktisk som muligt hvert emne.
      Med venlig hilsen
      Elisa

  15. David siger:

    Godt job

  16. Abigail siger:

    tak, jeg super fast, jeg har brug for at kende koden for at hente indholdet af en celle, hvor jeg klikker på et DataGridView i Visual Studio, ville jeg virkelig sætte pris på det, jeg håber dit svar ... tak

    • Elisa siger:

      Hej
      nødt til at skrive kode i et klik tilfælde af cellen og læse værdien af ​​datagridview1.currentCell.value

      eller

      datagridview1.currentrow.cell (n). værdi, hvor n er indekset for den pågældende søjle

      Jeg håber, du tjener

    • David siger:

      GrdDatos_MouseDoubleClick Private Sub (ByVal afsenderen som System.Object, ByVal e Som System.Windows.Forms.MouseEventArgs) Håndtag GrdDatos.MouseDoubleClick

      Hvis Convert.ToInt32 (GrdDatos.CurrentRow.Index) <= Convert.ToInt32 (GrdDatos.Rows.Count - 2) Så
      txtOrdeninter.Text = GrdDatos.CurrentRow.Cells (0). Value.ToString ()
      End If
      txtOrdeninter.Text = GrdDatos.CurrentRow.Cells (0). Value.ToString ()
      txtPartinter.Text = GrdDatos.CurrentRow.Cells (1). Value.ToString ()
      txtCant_ter1inter.Text = GrdDatos.CurrentRow.Cells (4). Value.ToString ()
      txtcantdisp.Text = GrdDatos.CurrentRow.Cells (5). Value.ToString ()
      txtCant_EnvioInter.Text = GrdDatos.CurrentRow.Cells (6). Value.ToString ()
      txtLotinter.Text = GrdDatos.CurrentRow.Cells (10). Value.ToString ()
      txtMedidaInter.Text = GrdDatos.CurrentRow.Cells (13). Value.ToString ()

      ActDesBotones (sand)
      Hvis Convert.ToInt32 (GrdDatos.CurrentRow.Cells (4). Value) = 0 Så
      btnModificarInter.Enabled = False
      End If
      txtCant_EnvioInter.Focus ()
      End Sub

      Jeg håber, at I tjener

Kommentar