Visual Basic er " DrawItem " metode giver dig mulighed for at bygge fantasifulde kontrol. Listbox kontrol , for eksempel, viser elementer på en liste , men du kan kun ændre tekstens farve hvert element i kontrollen. Sådan opretter du en forbedret ListBox , der viser et valgt element tekst med en anden farve , er du nødt til at lave en lille ændring i ListBox s " DrawItem "-metoden. Instruktioner
Change Text Farve Alle Artikler
1
Launch Visual Studio og oprette en ny Visual Basic Windows Forms projekt. En ny form navnet " Form1 " åbner i redigeringsvinduet .
2
Klik på "Vis" knappen, og derefter klikke på " Toolbox " for at åbne Visual Studio værktøjskasse .
3
Dobbeltklik på " ListBox " kontrol . Visual Studio placerer den på formularen og navnene IT " ListBox1 ".
4
Klik på " ListBox1 " kontrol og tryk på " F4 " for at se vinduet Egenskaber. Dette vindue giver dig mulighed for at indstille en kontrol egenskaber , såsom farve og størrelse.
5.
Klik på " Forgrundsfarve " ejendom . En drop- down pilen ud for ejendommen. Klik at pilen for at se en farve menu, der indeholder faner. "System" fanen viser Windows system farver, "Web " fanen viser listen over web- farver, . Og " Custom" fane kan du vælge din egen farve fra en farve gitter
6
Klik på en af disse faner , og klik derefter på den farve, du gerne vil bruge til teksten til alle listBox poster.
7.
Klik på " BackColor " element i vinduet Egenskaber for at vise dets rullepilen . Klik at pilen for at vælge en farve som beskrevet i det foregående trin . Visual Basic bruger derefter den farve du har valgt som baggrundsfarve for alle listbox poster. Fortsæt til næste afsnit, hvis du ønsker at ændre farven på kun den valgte ListBox element.
Skift tekstfarve på en valgt funktion
8
Dobbeltklik på formularen titellinjen. Koden for formularen er " Load "-metoden åbnes og viser en tom " Load "-metoden
9
Indsæt følgende kode, før denne metode er " End Sub" erklæring: .
ListBox1 . Items.AddRange (New Object () { "Element 1", " Vare ", " Vare ", " punkt 4 "} )
ListBox1.DrawMode = DrawMode.OwnerDrawFixed
Den første sætning tilføjer elementer til ListBox . Den næste sætning sætter kontrol tegning til " OwnerDrawFixed ". . Brug denne tilstand, når du ønsker at tilsidesætte Visual Basic default tegning mode for en kontrolgruppe
10
Indsæt følgende kode efter " Load "-metoden er " End Sub " erklæring : Hej
Privat sub ListBox1_DrawItem ( ByVal afsender Som Object , _
ByVal e Som System.Windows.Forms.DrawItemEventArgs ) _
Håndtag ListBox1.DrawItem
e.DrawBackground () < br >
Dim børste Som Brush = Brushes.Black
p Hvis ( e.State And DrawItemState.Selected = DrawItemState.Selected ) Så
børste = Brushes.Green
End If
e.Graphics.DrawString ( ListBox1.Items ( e.Index ) . ToString () , salg
e.Font , pensel, _
e.Bounds , StringFormat.GenericDefault )
End Sub
Denne kode tilsidesætter ListBox s " DrawItem "-metoden. Den " DrawItem " metoden kører hver gang Visual Basic trækker en ListBox punkt på kontrollen.
11
Find den erklæring, lyder, " Dim pensel Som Brush = Brushes.Black . " Denne linje kode skaber en " pensel " variabel, der holder farven af standard tegning pensel . I dette tilfælde er, at farven "Black ". Skift "Black " til den farve, du gerne vil bruge til at tegne de ikke valgte listbox poster. For eksempel, hvis du ønsker at ændre standard element farve til rød erstatte den tidligere erklæring med dette : Hej
Dim børste Som Brush = Brushes.Red
12
Find følgende erklæring i koden : Hej
børste = Brushes.Green
Erstat "Grøn" med alle farver . Visual Basic bruger derefter den farve til at trække ListBox s valgte emne . Den endelige opgørelse kalder " snøre "-metoden , som trækker listbox poster.
13
Tryk på " F5 " for at køre programmet. Formularen vises og viser Liste og dens elementer . Klik på et element for at vælge det. Dens farve skifter til den farve , du har valgt til det valgte emne . Alle andre emner vises standard farve.