Hva er VB.Net-ressurser, og hvordan brukes de?

Etter Visual Basic-studentene lærer alt om løkker og betingede uttalelser og underutgaver, noe av det neste de gjør ofte spør: "Hvordan legger jeg til en bitmap, en .wav-fil, en tilpasset markør eller annen spesiell effekt?" Ett svar er ressurs filer. Når du legger til en ressursfil til prosjektet ditt, er det integrert for maksimal utføringshastighet og minimum stress når du pakker og distribuerer applikasjonen.

Å bruke ressursfiler er ikke den eneste måten å inkludere filer i VB prosjekt, men det har reelle fordeler. Du kan for eksempel inkludere en bitmap i en PictureBox-kontroll eller bruke mciSendString Win32 API.

Microsoft definerer en ressurs som "alle ikke-kjørbare data som logisk er distribuert med et program."

Den enkleste måten å administrere ressursfiler i prosjektet ditt er å velge kategorien Ressurser i prosjektegenskapene. Du får opp dette ved å dobbeltklikke på Mitt prosjekt i Løsningsutforsker eller i prosjektegenskapene dine under menypunktet Prosjekt.

Typer ressursfiler

instagram viewer
  • Strings
  • Bilder
  • ikoner
  • Audio
  • filer
  • Annen

Ressursfiler Forenkler globaliseringen

Ved hjelp av ressursfiler legger til en annen fordel: bedre globalisering. Ressurser er vanligvis inkludert i hovedforsamlingen, men .NET lar deg også pakke ressurser i satellittmonteringer. På denne måten oppnår du bedre globalisering fordi du bare inkluderer satellittmonteringene som er nødvendige. Microsoft ga hver språkdialekt en kode. For eksempel er den amerikanske dialekten på engelsk indikert med strengen "en-US", og den sveitsiske dialekten av fransk er indikert med "fr-CH." Disse kodene identifiserer satellittmonteringene som inneholder kulturspesifikk ressurs filer. Når en applikasjon kjører, bruker Windows automatisk ressursene i satellittmonteringen med kulturen bestemt av Windows-innstillinger.

VB.Net Legg til ressursfiler

Fordi ressurser er en egenskap av løsningen i VB.Net, får du tilgang til dem akkurat som andre egenskaper: ved navn ved å bruke My. Ressursobjekt. Undersøk dette for å illustrere applikasjon designet for å vise ikoner for Aristoteles fire elementer: luft, jord, ild og vann.

Først må du legge til ikonene. Velg kategorien Ressurser fra prosjektegenskapene. Legg til ikoner ved å velge Legg til eksisterende fil fra rullegardinmenyen Legg til ressurser. Etter at en ressurs er lagt til, ser den nye koden slik ut:

Private Sub RadioButton1_CheckedChanged (...
Håndterer MyBase. Laste
Button1.Image = Min. Ressurser. EARTH.ToBitmap
Button1.Text = "Earth"
Slutt sub

Innbygging med Visual Studio

Hvis du bruker Visual Studio, kan du legge inn ressurser direkte i prosjektforsamlingen. Disse trinnene legger til et bilde direkte til prosjektet ditt:

  • Høyreklikk prosjektet i Solution Explorer. Klikk på Legg til og deretter på Legg til eksisterende vare.
  • Bla gjennom bildefilen din og klikk Åpne.
  • Vis egenskapene for bildet som nettopp ble lagt til.
  • Sett egenskapen Build Action til Embedded Resource.

Du kan deretter bruke bitmappen direkte i kode som denne (der bitmappen var den tredje, indeks nummer 2 i forsamlingen).

Dim res () Som streng = GetType (Form1). Montering. GetManifestResourceNames ()
PictureBox1.Image = Nytt system. Tegning. Bitmapp (_
GetType (Form1). Montering. GetManifestResourceStream (res (2)))

Selv om disse ressursene er innebygd som binær data direkte i hovedforsamlingen eller i satellittmonteringsfiler, når du bygger prosjektet ditt i Visual Studio, blir de referert til av et XML-basert filformat som bruker utvidelsen .resx. Her er for eksempel et utdrag fra .resx-filen du nettopp opprettet:


type = "System. Ressurser. ResXFileRef,
System. Windows. Skjemaer ">
.. \ Resources \ CLOUD.ICO; System. Tegning. Ikon,
System. Tegning, versjon = 2.0.0.0,
Kultur = nøytral,
PublicKeyToken = b03f5f7f11d50a3a

Fordi de bare er tekst-XML-filer, kan en .resx-fil ikke brukes direkte av et .NET-rammeprogram. Den må konverteres til en binær ".resource" -fil, og legge den til applikasjonen din. Denne jobben oppnås av et verktøy som heter Resgen.exe. Det kan være lurt å gjøre dette for å lage satellittmonteringene for globalisering. Du må kjøre resgen.exe fra en ledetekst.

Kilde

"Ressursoversikt." Microsoft, 2015.