Atsisiųsti pateiktį
Pateiktis įkeliama. Prašome palaukti
1
Parengė Domertas Tauras IT1
Išteklių scenarijai Parengė Domertas Tauras IT1
2
Kas yra išteklių scenarijai?
Windows platformos SDK turi įrankį, išteklių scenarijų kompiliatorių. Jo darbo rezultatas ir yra išteklių scenarijus Išteklių scenarijai savyje turi GUI duomenis, kurie, sukompiliavus, gali būti susieti į programą. Tada programa gali prieiti prie duomenų išteklių scenarijuje. Windows OS išteklių prieina prie išteklių scenarijų įvairiais tikslais, pvz. pasirinkus programą Win Explorer‘yje ir nuspaudus „Properties“ galima pamatyti programos versiją. Ši informacija saugoma išteklių scenarijuje. Taip pat dauguma programų turi savo piktogramas, o jos taip pat saugomos išteklių scenarijuje.
3
Ištekliai Nuleidžiami ir iššokantys meniu Teksto eilutės
Klaviatūros kombinacijos Piktogramos Rastriniai vaizdai Dialogų langai Informacija apie versiją Pelės kursoriai
4
Prieš pradedant Išteklių scenarijų sintaksė panaši į C, tačiau reikia įtraukti <afxres.h> antraštės failą. Dauguma scenarijų turi makro verčių, todėl pridedamas ir antraštinis failas <resource.h>
5
Pavyzdys #include <windows.h> #define IDC_STATIC ICON "ProgIcon.ico" 10 MENU { // or BEGIN POPUP "&File" { MENUITEM "E&xit",IDCANCEL } } // or END
6
Išteklių struktūra id_of_resource resource_type [memory management flags] "filename„ id_of_resource resource_type [memory management flags] BEGIN subsequent data Id_of_resource ir resource_type gali būti eilutė arba skaičius
7
Pavyzdžiai FindResource() // gauti rankenėlę
LoadResource() // gauti dvejetainį dydį LockResource() gauti rodyklę UnlockResource() // makro FreeResource() // atlaisvinti
8
Identifikatoriai IDS: simbolių eilutės išteklius IDM: meniu išteklius
IDC: komandos identifikatorius IDD: dialogo langoi šteklius IDA: kombinacijų lentelės išteklius IDI: piktogramos išteklius IDB: rastrinio vaizdo išteklius ID: tinkinto ar neįprasto ištekliaus tipas
9
Kalba Svarbu nurodyti informacijos kalba LANGUAGE sakiniu 21 MENU
LANGUAGE 7,1 // or, LANG_GERMAN, SUBLANG_GERMAN { POPUP "&Datei" // = "&File„ Piktogramos dažniausiai neturi kalbos
10
Discardable Šis raktažodis neveiksnus 32 bitų Windows, nes ištekliai čia neįkraunami į atmintį, bet nurodomi.
11
Piktogramos IDI_ICON<n> ICON [DISCARDABLE] "iconfile.ico„
IDI_ICON1 ICON DISCARDABLE "icon1.ico" IDI_ICON2 ICON DISCARDABLE "icon2.ico„ Windows naudos tik pirmą piktogramą #define IDI_ICON1 1 #define IDI_ICON2 2 Makro aprašymas
12
Eilučių lentelės STRINGTABLE DISCARDABLE {
IDS_STRING1, "This is my first string" IDS_STRING2, "This is my second string" ... } int LoadString(HINSTANCE hInstance, UINT uID, LPTSTR lpBuffer, int nBufferMax); uID – eilutės numeris lpBuffer – masyvo kintamasis nBuffermax – didžiausias simbolių kiekis
13
Kaip veikia eilučių lentelės
Eilutės baigiasi 0, tačiau jei jos viduryje yra „/0“, nieko nenutiks, nes eilutėse skaičiuojami simboliai.
14
Kombinacijos IDA_ACCEL_TABLE ACCELERATORS DISCARDABLE BEGIN
"a", IDA_ACTION_A, ALT //Alt+A "b", IDA_ACTION_B, CONTROL //Ctrl+B "c", IDA_ACTION_C, ALT, CONTROL //Alt+Ctrl+A END
15
Kombinacijos su specialiais klavišais
IDA_ACCEL_TABLE ACCELERATORS DISCARDABLE BEGIN VK_F12, IDA_ACTION_F12, VIRTKEY //press the "F12 Key" VK_DELETE, IDA_ACTION_DEL, VIRTKEY, CONTROL //Ctrl+Delete END
16
Kombinacijų lentelės įkrovimas
HACCEL hAccel; hAccel = LoadAccelerators(hInst, MAKEINTRESOURCE(IDA_ACCEL_TABLE));
17
Meniu (ID or name) MENU [DISCARDABLE] BEGIN POPUP "File" POPUP "Edit"
MENUITEM "Copy", IDM_EDIT_COPY MENUITEM "Paste", IDM_EDIT_PASTE END ...
18
Meniu įkrovimas HMENU hmenu;
hmenu = LoadMenu(hInst, MAKEINTRESOURCE(ID_MENU));
19
Kaip veikia meniu case WM_COMMAND: switch(WPARAM) {
case IDM_EDIT_COPY: //handle this action break; case IDM_EDIT_PASTE: }
20
ID_MENU MENU DISCARDABLE
BEGIN POPUP "&File" POPUP "&Edit" MENUITEM "Copy", IDM_EDIT_COPY MENUITEM "Paste", IDM_EDIT_PASTE END ... Alt+F pasirinks File, Alt+E - edit
21
Versijos informacija BLOCK "StringFileInfo" BEGIN BLOCK "040904E4"
VALUE "CompanyName", "My Company.\0" VALUE "FileDescription", "A Win32 program." VALUE "FileVersion", " \0" VALUE "ProductName", "The product name.\0" VALUE "ProductVersion", "1.0\0" VALUE "LegalCopyright", "My Company.\0" END BLOCK "VarFileInfo" VALUE "Translation", 0x409, 1252
22
Dialogo langas (Dialog ID or name) DIALOG [DISCARDABLE] x, y, width, height TITLE "(dialog box title)" [CLASS "(class name)"] FONT "(font name)" BEGIN ... END
Panašios pateiktys
© 2025 SlidePlayer.lt Inc.
All rights reserved.