Care sunt resursele VB.Net și cum sunt utilizate?

După ce Visual Basic studenții învață totul despre bucle și declarații condiționale și subrutine, unul dintre următoarele aspecte pe care le întreabă adesea este: „Cum adaug un bitmap, un fișier .wav, un cursor personalizat sau un alt efect special?” Un răspuns este fișierele de resurse. Când adăugați un fișier de resurse la proiectul dvs., acesta este integrat pentru viteza maximă de execuție și dificultățile minime la ambalarea și implementarea aplicației.

Utilizarea fișierelor de resurse nu este singura modalitate de a include fișiere într-un proiect VB, dar are avantaje reale. De exemplu, puteți include un bitmap într-un control PictureBox sau puteți utiliza API-ul mciSendString Win32. 

Microsoft definește o resursă ca „orice date neexecutabile care sunt dislocate logic cu o aplicație”.

Cel mai simplu mod de a gestiona fișierele de resurse din proiectul dvs. este să selectați fila Resurse din proprietățile proiectului. Puteți face acest lucru făcând dublu clic pe Proiectul meu în Exploratorul de soluții sau în proprietățile proiectului dvs. din elementul de meniu Proiect.

Tipuri de fișiere cu resurse

  • Siruri de caractere
  • Imagini 
  • icoane
  • Audio
  • Fișiere
  • Alte

Fișierele de resurse Simplifică globalizarea

Utilizarea fișierelor de resurse adaugă un alt avantaj: o mai bună globalizare. În mod normal, resursele sunt incluse în ansamblul principal, dar .NET vă permite, de asemenea, să pachetați resurse în ansambluri satelite. Astfel, veți realiza o mai bună globalizare, deoarece includeți doar ansamblurile de sateliți care sunt necesare. Microsoft a dat fiecărui dialect de limbă un cod. De exemplu, dialectul american al limbii engleze este indicat prin șirul „en-US”, iar dialectul elvețian al limbii franceze este indicat prin „fr-CH”. Aceste coduri identifică ansamblurile de sateliți care conțin fișiere de resurse specifice culturii. Când rulează o aplicație, Windows folosește automat resursele conținute în ansamblul satelitului cu cultura determinată din setările Windows.

VB.Net Adaugă fișiere resurse

Deoarece resursele sunt o proprietate a soluției în VB.Net, le accesați la fel ca alte proprietăți: pe nume folosind obiectul My.Resources. Pentru a ilustra, examinați această aplicație concepută pentru a afișa pictograme pentru cele patru elemente ale lui Aristotel: aerul, pământul, focul și apa.

În primul rând, trebuie să adăugați pictogramele. Selectați fila Resurse din Proprietățile proiectului. Adăugați pictograme alegând Adăugare fișier existent din meniul derulant Adăugare resurse. După adăugarea unei resurse, noul cod arată astfel:

Sub Radio privatButton1_CheckedChanged (...
Manerele MyBase.Load
Button1.Image = My.Resources.EARTH.ToBitmap
Button1.Text = "Pământ"
Sub final

Încorporarea cu Visual Studio

Dacă utilizați Visual Studio, puteți încorpora resurse direct în ansamblul proiectului. Acești pași adaugă o imagine direct proiectului tău:

  • Faceți clic dreapta pe proiect în Exploratorul de soluții. Faceți clic pe Adăugare, apoi pe Adăugare articol existent.
  • Căutați în fișierul dvs. de imagine și faceți clic pe Deschide.
  • Afișează proprietățile pentru imaginea care tocmai a fost adăugată.
  • Setați proprietatea Build Action la Resurse încorporate.

Puteți folosi apoi harta de bit direct în cod ca acesta (unde bitmap-ul a fost al treilea, numărul de index 2 din ansamblu).

Dim res () As String = GetType (Form1) .Assemblea.GetManifestResourceNames ()
PictureBox1.Image = System.Drawing.Bitmap nou (_
Gettype (Form1) .Assembly.GetManifestResourceStream (res (2)))

Deși aceste resurse sunt încorporate ca date binare direct în ansamblul principal sau în fișierele de asamblare prin satelit, atunci când construiți proiectul dvs. în Visual Studio, acestea sunt trimise printr-un format de fișier bazat pe XML care utilizează extensia .resx. De exemplu, iată un fragment din fișierul .resx pe care tocmai l-ați creat:


tip = "System.Resources.ResXFileRef,
System.Windows.Forms ">
... \ Resurse \ CLOUD.ICO; System.Drawing.Icon,
System.Drawing, Versiunea = 2.0.0.0,
Cultura = neutru,
PublicKeyToken = b03f5f7f11d50a3a

Deoarece sunt doar fișiere XML text, un fișier .resx nu poate fi utilizat direct de o aplicație cadru .NET. Trebuie să fie convertit într-un fișier „.resurse” binare, adăugându-l în aplicația dvs. Această lucrare este realizată de un program de utilitate numit Resgen.exe. Poate doriți să faceți acest lucru pentru a crea ansambluri de sateliți pentru globalizare. Trebuie să rulați resgen.exe dintr-un prompt de comandă.

Sursă

„Prezentare generală a resurselor”. Microsoft, 2015.