I tekli scenarijai resource scripts
Download
1 / 28

Išteklių scenarijai (resource scripts) - PowerPoint PPT Presentation


  • 87 Views
  • Uploaded on

Išteklių scenarijai (resource scripts). rc.exe. Windows SDK turi specialų įrankį – rc.exe, išteklių scenarijų kompiliatorių (resource script compiler). Tai galinga programavimo Windows dalis, kurią geras programuotojas turėtų išmanyti ir naudoti. Kas tai yra?.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Išteklių scenarijai (resource scripts)' - zahir-horne


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
I tekli scenarijai resource scripts

Išteklių scenarijai(resource scripts)


Rc exe
rc.exe

  • Windows SDK turi specialų įrankį – rc.exe, išteklių scenarijų kompiliatorių (resource script compiler).

  • Tai galinga programavimo Windows dalis, kurią geras programuotojas turėtų išmanyti ir naudoti.


Kas tai yra
Kas tai yra?

Tai failas, talpinantis GVS (GUI) duomenis, ir, kai sukompiliuotas, gali būti susietas su programa. Tuomet programa gali pasinaudoti duomenimis saugomais scenarijuje. (Pvz.: versija, piktograma ir pan.)


I tekli tipai
Išteklių tipai

  • Išskleidžiamasis meniu (drop-down menu)

  • Iškylantis meniu (popup menu)

  • Tekstinės eilutės

  • Spartieji klavišai (keyboard accelerators)

  • Piktogramos (icons)

  • Rastriniai paveikslai (bitmap images)

  • Dialogo langai (dialog boxes)

  • Versijos informacija

  • Pelės kursoriai


Kuriant scenarijus
Kuriant scenarijus...

  • Scenarijų rašymo sintaksė yra labai panaši į C. Pavyzdžiui, scenarijų kompiliatorius naudoja standartinį C parengiamąją doroklę (preprocessor). Svarbu atkreipti į tai dėmesį, nes reikia įtraukti <afxres.h> antraštinį failą į scenarijų.

  • Kadangi scenarijuose galima rašyti makro komandas, labai dažnai programuotojai saugo susijusias makro komandas antraštiniame faile “resource.h”.


Naudojant scenarijus
Naudojant scenarijus...

  • Kai scenarijus yra išsaugomas vykdomajame faile, egzistuoja keli būdai juo pasinaudoti. Pavyzdžiui, norint kreiptis į eilutę, naudosimės LoadString funkcija, atitinkamai kreipiantis į piktogramą –LoadIcon.

  • Tam, kad galėtumėt kreiptis į scenarijų, reikia žinoti vykdomojo failo identifikatorių (instance handle). Kas būtų, jei gautume kito vykdomojo failo identifikatorių?


Make int resource
MAKEINTRESOURCE

  • Dirbant su scenarijais šis raktinis žodis yra labai svarbus. Kaip jis veikia?

  • Ištekliai saugomi su vardu, kuris gali būti tiek eilutė, tiek skaitinis identifikatorius. Skaitiniu atveju, skaičius negali būti didesnis nei 16 bitų, bet į išteklius tai kreipiamasi vardu – unikodine eilute... Tam, kad skaitinis identifikatorius nebūtų sumaišytas su eilute, yra perduodama makrokomanda MAKEINTRESOURCE, kuri pakeičia skaičių į atitinkamą eilutę.


I tekli identifikatoriai
Išteklių identifikatoriai

  • IDS – eilutės tipo

  • IDM – meniu

  • IDC – komandos

  • IDD – dialogo lango

  • IDA – prieigos klavišų lentelės

  • IDI – piktogramos arba rastrinio vaizdo

  • IDB – rastrinio vaizdo

  • ID – nežinomo tipo


Discardable
DISCARDABLE

  • Ištekliai yra įkeliami į atmintį dirbant programai. Tačiau programa gali jų nenaudoti kurį laiką, todėl būtų prasminga juos (arba jų dalį) pašalinti iš atminties. Tam tikslui yra naudojamas raktažodis DISCARDABLE apibrėžiant išteklių.

  • Šis raktažodis 32 bitų Windows sistemose yra ignoruojamas, bet likęs suderinamumo tikslais.


Piktogramos
Piktogramos

  • Piktogramos gali būti saugomos išteklių faile naudojant raktažodį ICON:

  • Programos vykdomasis failas bus rodomas su pirmąja piktograma, jei jų yra keletas:



  • WNDCLASSEX turi dviejų piktogramų identifikatorius: didelės ir mažos. Mažą piktogramą sudaro 16 taškų kvadratas, didelę – 32. Jei nėra pateiktas mažos piktogramos identifikatorius – didelė piktograma yra sumažinama.

  • Jei funkcijai yra perduodamas objekto identifikatorius NULL, Windows’ai grąžins numatytąją piktogramą.


Rastriniai paveiksl liai bitmaps
Rastriniai paveikslėliai (bitmaps) didelės ir mažos. Mažą piktogramą sudaro 16 taškų kvadratas, didelę

  • Rastriniai paveikslėliai gali būti iškviečiami taip pat kaip ir piktogramos:

  • Kadangi “bitmapai” yra dideli, Windows’ai gali grąžinti NULL reikšmę.

  • Taip pat juos reikia pašalinti iš atminties perduodant identifikatorių funkcijai DestroyObject.


Pel s ymekliai
Pelės žymekliai didelės ir mažos. Mažą piktogramą sudaro 16 taškų kvadratas, didelę

Pelės žymekliai apibrėžiami panašiai kaip ir piktogramų atveju ir įkeliami funkcijos LoadCursor pagalba.


Simboli eilu i lentel s
Simbolių eilučių lentelės didelės ir mažos. Mažą piktogramą sudaro 16 taškų kvadratas, didelę

  • Simbolių eilutės gali būti aprašomos taip:

  • Pastebėsime, kad galima naudoti ir BEGIN END vietoje { }. Kompiliatoriui tai neturi jokios reikšmės.


  • Lentelė įkeliama funkcijos didelės ir mažos. Mažą piktogramą sudaro 16 taškų kvadratas, didelę LoadString pagalba:

  • hInst – bibliotekos, talpinančios eilutę, identifikatorius

  • uID – simbolių eilutės identifikatorius

  • lpBuffer – simbolių masyvo kintamasis, kuris įgis eilutės reikšmę

  • nBufferMax – nurodo, kiek simbolių gali būti įkelta

    Pati funkcija grąžina nuskaitytų simbolių kiekį.


Prieigos klavi ai accelerators
Prieigos klavišai (accelerators) didelės ir mažos. Mažą piktogramą sudaro 16 taškų kvadratas, didelę

Prieigos klavišai yra įprasta beveik visų taikomųjų programų dalis, todėl jų sukūrimas scenarijuose yra gera idėja. Priegos klavišų lentelė atrodo taip:


Pavyzd iai
Pavyzdžiai didelės ir mažos. Mažą piktogramą sudaro 16 taškų kvadratas, didelę

Klavišų kombinacijos apibrėžiamos kaip simboliai arba virtualaus klavišo kodo reikšmė:


Virtkey virtuali klavi kodo identifikatoriai
VIRTKEY - virtualių klavišų kodo identifikatoriai didelės ir mažos. Mažą piktogramą sudaro 16 taškų kvadratas, didelę


Jei prieigos klaivišus susiesime su meniu komandomis, tuomet, paspaudus prieigos klavišą, išryškės meniu komanda. Nebent nurodytume raktažodį NOINVERT:


Loadaccelerators
LoadAccelerators tuomet, paspaudus prieigos klavišą, išryškės meniu komanda. Nebent nurodytume raktažodį NOINVERT:

Norint įkelti prieigos klavišus, naudosimės funkcija LoadAccelerators:


Translateaccelerator
TranslateAccelerator tuomet, paspaudus prieigos klavišą, išryškės meniu komanda. Nebent nurodytume raktažodį NOINVERT:

Tam, kad programa “suprastų” priegos klavišų reikšmes, reikia pakeisti pranešimų ciklą. Jame panaudosime TranslateAccelerator funkciją, pakeičiančią klavišų reikšmes atitinkamais komandiniais pranešimais:



Meniu
Meniu programa, reikia taip pat reaguoti į polangių prieigos klavišus. Tam naudosimės


Ampersendas
Ampersendas (&) programa, reikia taip pat reaguoti į polangių prieigos klavišus. Tam naudosimės


Versijos informacija ir dialogai
Versijos informacija ir dialogai programa, reikia taip pat reaguoti į polangių prieigos klavišus. Tam naudosimės

  • Versijos informacija saugoma išteklių faile.

  • Dialogo lango pavyzdys:

  • Jei dialogo langas nėra susiejamas su klase, tuomet laukas CLASS nėra užpildomas


ad