Kā izveidot un izmantot resursus programmā Visual Basic 6

Uzņēmējs, kas strādā pie datora birojā

Jetta Productions / Getty Images





Pēc tam, kad Visual Basic studenti uzzina visu par cilpām un nosacījuma priekšrakstiem, apakšprogrammām un tā tālāk, viena no nākamajām lietām, par ko viņi bieži jautā, ir: 'Kā pievienot bitkarti, wav failu, pielāgotu kursoru vai kādu citu īpašu efektu?' ' Viena atbilde ir resursu faili . Kad pievienojat failu, izmantojot Visual Studio resursu failus, tie tiek integrēti tieši jūsu Visual Basic projektā, lai nodrošinātu maksimālu izpildes ātrumu un minimālu problēmu. iepakošana un izvietošana jūsupieteikumu.

Resursu faili ir pieejami gan VB 6, gan VB.NET , taču to izmantošanas veids, tāpat kā viss pārējais, abās sistēmās ir diezgan atšķirīgs. Paturiet prātā, ka tas nav vienīgais veids, kā izmantot failus VB projektā, taču tam ir reālas priekšrocības. Piemēram, jūs varētu iekļaut bitkarti a PictureBox kontrolēt vai izmantot mciSendString Win32 API. “MCI” ir prefikss, kas parasti norāda multivides komandu virkni.



Resursu faila izveide VB 6

Projekta resursus varat skatīt gan VB 6, gan VB.NET vietnē Project Explorer logs (Solution Explorer VB.NET — viņiem tas bija jāpadara nedaudz atšķirīgs). Jaunam projektam to nebūs, jo resursi nav VB 6 noklusējuma rīks. Pievienosim projektam vienkāršu resursu un redzēsim, kā tas tiek darīts.

Pirmais solis ir startēt VB 6, atlasot a Standarta EXE projekts uz Jauns cilne startēšanas dialoglodziņā. Tagad atlasiet Papildinājumi opciju izvēļņu joslā un pēc tam Pievienojumprogrammu pārvaldnieks... Tiks atvērts pievienojumprogrammu pārvaldnieka dialoglodziņš.



Ritiniet sarakstu uz leju un atrodiet VB 6 resursu redaktors . Varat vienkārši veikt dubultklikšķi uz tā vai ievietot atzīmi Ielādēts/izkrauts lodziņu, lai pievienotu šo rīku savai VB 6 videi. Ja domājat, ka bieži izmantosit resursu redaktoru, varat arī atzīmēt lodziņu. Ielādēt startēšanas laikā un turpmāk jums vairs nebūs jāveic šī darbība. Noklikšķiniet uz Labi, un tiek atvērts resursu redaktors. Jūs esat gatavs sākt pievienot resursus savam projektam!

Dodieties uz izvēlņu joslu un atlasiet Projekts tad Pievienot jaunu resursu failu vai vienkārši noklikšķiniet ar peles labo pogu Resursu redaktorā un uznirstošajā konteksta izvēlnē atlasiet Atvērt. Tiks atvērts logs, kurā tiek prasīts norādīt resursa faila nosaukumu un atrašanās vietu. Noklusējuma atrašanās vieta, iespējams, nebūs tā, ko vēlaties, tāpēc dodieties uz sava projekta mapi un ievadiet jaunā resursa faila nosaukumu Faila nosaukums kaste. Šajā rakstā šim failam izmantošu nosaukumu “AboutVB.RES”. Jums būs jāapstiprina faila izveide verifikācijas logā, un fails 'AboutVB.RES' tiks izveidots un aizpildīts resursu redaktorā.

VB6 atbalsts

VB6 atbalsta:

  • Virkņu tabulas redaktors
    ('Rediģēt virkņu tabulas...')
  • Pielāgoti kursori — 'CUR' faili
    ('Pievienot kursoru...')
  • Pielāgotas ikonas — ICO faili
    ('Pievienot ikonu...')
  • Pielāgotas bitkartes — 'BMP' faili
    ('Pievienot bitkarti...')
  • Programmētājs definēja resursus
    ('Pievienot pielāgotu resursu...')

VB 6 nodrošina vienkāršu virkņu redaktoru, taču visām pārējām izvēlēm jums ir jāizveido fails citā rīkā. Piemēram, varat izveidot BMP failu, izmantojot vienkāršo Windows Paint programmu.



Katrs resurss resursa failā tiek identificēts VB 6 ar an Id un nosaukums resursu redaktorā. Lai resurss būtu pieejams jūsu programmai, pievienojiet tos resursu redaktorā un pēc tam izmantojiet ID un resursu “Tips”, lai norādītu uz tiem savā programmā. Pievienosim četras ikonas resursa failam un izmantosim tās programmā.

Kad pievienojat resursu, faktiskais fails tiek kopēts jūsu projektā. Visual Studio 6 nodrošina visu ikonu kolekciju mapē...



C:Program FilesMicrosoft Visual StudioCommonGraphicsIcons

Lai turpinātu tradīciju, mēs atlasīsim grieķu filozofa Aristoteļa četrus “elementus” — zemi, ūdeni, gaisu un uguni — no apakšdirektorijas Elementi. Kad tos pievienojat, Visual Studio (101, 102, 103 un 104) automātiski piešķir ID.



Lai programmā izmantotu ikonas, mēs izmantojam VB 6 “Load Resource” funkciju. Ir vairākas no šīm funkcijām, no kurām izvēlēties:

    LoadResPicture (indekss, formāts)bitkartēm, ikonām un kursoriem

Izmantojiet VB iepriekš definētās konstantes vbResBitmap bitkartēm, vbResIcon ikonām un vbResCursor kursoriem parametram 'format'. Šī funkcija atgriež attēlu, ko varat izmantot tieši. LoadResData (paskaidrots tālāk) atgriež virkni, kas satur faktiskos faila bitus. Mēs redzēsim, kā to izmantot pēc ikonu demonstrēšanas.



    LoadResString(indekss)stīgāmLoadResData (indekss, formāts)jebkam līdz 64K

Kā minēts iepriekš, šī funkcija atgriež virkni ar faktiskajiem resursa bitiem. Šīs ir vērtības, kuras var izmantot formāta parametram šeit:

1 Kursora resurss
2 Bitkartes resurss
3 Ikonu resurss
4 Izvēlnes resurss
5 Dialoglodziņš
6 Virknes resurss
7 Fontu direktorijas resurss
8 Fontu resurss
9 Akseleratora galds
10 Lietotāja definēts resurss
12 Grupas kursors
14 Grupas ikona

Tā kā mūsu resursa failā AboutVB.RES ir četras ikonas, izmantosim LoadResPicture (indekss, formāts) lai tos piešķirtu CommandButton rekvizītam Picture VB 6.

Es izveidoju aplikāciju ar četriem OptionButton komponenti ar nosaukumu Zeme, Ūdens, Gaiss un Uguns un četri Klikšķa notikumi — viens katrai opcijai. Tad es pievienoju a CommandButton un mainīja rekvizītu Stils uz '1 — grafisks'. Tas ir nepieciešams, lai CommandButton varētu pievienot pielāgotu ikonu. Katras OptionButton (un veidlapas ielādes notikuma — lai to inicializētu) kods izskatās šādi (ar attiecīgi mainītu ID un parakstu citiem OptionButton klikšķu notikumiem):

Pielāgoti resursi

'Lielais darījums' ar pielāgotajiem resursiem ir tas, ka parasti jums ir jānodrošina veids, kā tos apstrādāt programmas kodā. Kā Microsoft teikts, 'tas parasti prasa Windows API izsaukumu izmantošanu.' To mēs darīsim.

Mūsu izmantotais piemērs ir ātrs veids, kā ielādēt masīvu ar konstantu vērtību sēriju. Atcerieties, ka resursa fails ir iekļauts jūsu projektā, tādēļ, ja mainās vērtības, kas jāielādē, jums būs jāizmanto tradicionālāka pieeja, piemēram, secīgs fails, ko atverat un nolasāt. Mēs izmantosim Windows API CopyMemory API. CopyMemory kopē atmiņas bloku uz citu atmiņas bloku neatkarīgi no tur saglabātā datu veida. Šis paņēmiens ir labi zināms VB 6'ers kā īpaši ātrs veids, kā kopēt datus programmā.

Šī programma ir nedaudz vairāk iesaistīta, jo vispirms mums ir jāizveido resursa fails, kurā ir virkne garu vērtību. Es vienkārši piešķīru vērtības masīvam:

Dim garas(10) Tik garas
garumi (1) = 123456
garumi (2) = 654321

... un tā tālāk.

Pēc tam vērtības var ierakstīt failā ar nosaukumu MyLongs.longs izmantojot VB 6 “Put” paziņojumu.

Ieteicams atcerēties, ka resursa fails nemainās, ja vien neizdzēšat veco un nepievienojat jaunu. Tātad, izmantojot šo paņēmienu, jums būs jāatjaunina programma, lai mainītu vērtības. Lai programmā iekļautu failu MyLongs.longs kā resursu, pievienojiet to resursa failam, veicot tās pašas darbības, kas aprakstītas iepriekš, bet noklikšķiniet uz Pievienot pielāgotu resursu... nevis Pievienot ikonu... Pēc tam atlasiet failu MyLongs.longs kā pievienojamo failu. Jums ir arī jāmaina resursa tips, ar peles labo pogu noklikšķinot uz šī resursa, atlasot 'Properties' un mainot veidu uz 'longs'. Ņemiet vērā, ka šis ir faila MyLongs.longs faila tips.

Lai izmantotu izveidoto resursu failu jauna masīva izveidei, vispirms deklarējiet Win32 CopyMemory API izsaukumu:

Pēc tam izlasiet resursa failu:

Pēc tam pārvietojiet datus no baitu masīva uz garu vērtību masīvu. Piešķiriet masīvu garajām vērtībām, izmantojot baitu virknes garuma veselu skaitļu vērtību, kas dalīta ar 4 (tas ir, 4 baiti uz garumu):

Tagad tas var šķist daudz problēmu, ja varat vienkārši inicializēt masīvu notikumā Form Load, taču tas parāda, kā izmantot pielāgotu resursu. Ja jums būtu liels konstantu kopums, kas jums nepieciešams, lai inicializētu masīvu, tas darbotos ātrāk nekā jebkura cita metode, ko es varu iedomāties, un jums nebūtu jāiekļauj lietojumprogrammā atsevišķs fails, lai to izdarītu.