Privat delad funktion setCursorpos (byVal X som heltal, byval y som heltal) som booleska
Slutfunktion
Privata kretsar som ny lista (av rektangel)
Privat rnd som ny slumpmässig ()
Privat sub myScreensaver_load (avsändare som objekt, e som eventArgs) hanterar mybase.load
Ställ in bakgrundsfärgen
Me.backColor =Color.Black
'Ställ in formegenskaper för fullskärm
Me.FormBorDerStyle =formBorderStyle.None
Mig.
Me.windowstate =formstate.maximerad
'Starta timer för animering
Timer1.start ()
Slutsub
Privat subtimer1_tick (avsändare som objekt, e som eventArgs) hanterar timer1.tick
'Ovalidat för att utlösa målarhändelse
Me.invalidate ()
Slutsub
Privat sub myScreensaver_Paint (avsändare som objekt, e as PaintEventArgs) HANDLAR MYBASE.PAINT
'Rensa befintliga kretsar
cirklar.clear ()
'Skapa nya slumpmässiga cirklar
För jag som heltal =0 till 10 'justera antalet cirklar här
Dim storlek som heltal =rnd.next (20, 80) 'Justera cirkelstorleksintervall
Dim X As heltal =rnd.next (0, me.width - storlek)
Dim y som heltal =rnd.next (0, me.Height - storlek)
Circles.Add (ny rektangel (x, y, storlek, storlek))
Nästa
'Rita cirklar
Använda G som grafik =t.ex.
G.SmoothingMode =SmoothingMode.antialias
För varje rekt som rektangel i cirklar
Använda borste som SolidBrush =new SolidBrush (color.fromargb (rnd.next (256), rnd.next (256), rnd.next (256)) 'slumpmässig färg
G.Fillellipse (Brush, Rect)
Att använda
Nästa
Att använda
Slutsub
Privat sub mycreensaver_mousemove (avsändare som objekt, e som mouseeventargs) hanterar mybase.mousemove
'Avsluta på musens rörelse
Me.Close ()
Slutsub
Privat sub myScreensaver_KeyDown (avsändare som objekt, e som keyEventArgs) hanterar myBase.Keydown
'Avsluta på tangentpressen
Me.Close ()
Slutsub
'Förhindra skärmsläckare från att aktiveras medan detta körs
Skyddad åsidosätter sub onaktiverad (e som eventArgs)
Mybase.onactivated (e)
SetCursorpos (Me.Width \ 2, Me.Height \ 2)
Slutsub
Slutklass
`` `
för att kompilera och potentiellt distribuera detta:
1. Skapa ett nytt VB.Net Windows Forms App Project.
2. Byt ut standardformulärets kod med koden ovan.
3. Lägg till en timerkontroll (timer1) till formuläret.
4. sammanställa projektet. Detta skapar en körbar fil (.exe).
Att distribuera som skärmsläckare: Detta är * betydligt * mer komplex och kräver förståelse av skärmsläckare distributionsmekanismer (som varierar mellan Windows -versioner). Du skulle vanligtvis behöva skapa ett installationsprojekt (t.ex. med hjälp av Visual Studios installationsprojekt) som hanterar registerposter och filplacering för att integrera din .exe som ett korrekt skärmsläckarealternativ i Windows. Installatören måste registrera körbara hos Windows Screensaver -systemet. Det finns tutorials och resurser tillgängliga online för att vägleda dig genom Screensaver -distributionsprocessen; Att söka efter "vb.net skärmsläckare distribution" kommer att vara till hjälp. Detta steg ligger utanför räckvidden för ett enkelt kodexempel.
Viktiga överväganden:
* Felhantering: Den medföljande koden saknar robust felhantering. En produktionsklar skärmsläckare skulle behöva mer robusta felkontroller.
* Prestanda: För mycket höga upplösningar eller många cirklar kan du behöva optimeringstekniker för att upprätthålla en smidig bildhastighet.
* Anpassning: Du kan enkelt ändra utseendet genom att modifiera cirkelstorleken, färgen och antalet. Mer sofistikerad grafik kan också implementeras.
Kom ihåg att distribution av en skärmsläckare kräver noggrann övervägande av licensiering och potentiella säkerhetsfrågor. Testa noggrant din skärmsläckare innan du distribuerar den.