Նոր

Ինչպե՞ս է Դելֆին օգտագործում ռեսուրսային ֆայլերը

Ինչպե՞ս է Դելֆին օգտագործում ռեսուրսային ֆայլերը


We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.

Bitmaps- ից սրբապատկերներից մինչև կուրսորը մինչև լարային սեղաններ, յուրաքանչյուր Windows ծրագիր օգտագործում է ռեսուրսներ:Ռեսուրսներ ծրագրի այն տարրերն են, որոնք աջակցում են ծրագրին, բայց գործադիր կոդ չեն: Այս հոդվածում մենք կքննարկենք ռեսուրսներից բիտմապի, սրբապատկերների և կուրսորը օգտագործելու որոշ օրինակներ:

Ռեսուրսների գտնվելու վայրը

.Exe ֆայլում ռեսուրսների տեղադրումը ունի երկու հիմնականառավելությունները:

  • Ռեսուրսներին կարելի է ավելի արագ մուտք գործել, քանի որ գործադիր ֆայլում ռեսուրսը գտնելու համար ավելի քիչ ժամանակ է հարկավոր, քան դա սկավառակի ֆայլից բեռնելու համար:
  • Ծրագրի ֆայլը և ռեսուրսները կարող են պարունակվել մեկ բաժնում (the .exe ֆայլ) առանց շատ օժանդակ ֆայլերի անհրաժեշտության:

Պատկերների խմբագիր

Առաջին հերթին պետք է ստեղծել ռեսուրսների ֆայլ: Ռեսուրսների ֆայլերի լռելյայն երկարաձգումն է:RES. Ռեսուրսների ֆայլերը կարող են ստեղծվել Delphi- ի Image Խմբագրիչով:

Դուք կարող եք անվանել ռեսուրսների ֆայլը ձեր ուզած ցանկացած բան, քանի դեռ այն ունի ընդլայնում ".RES", և առանց ընդարձակման ֆայլի անունը նույնը չէ, ինչ ցանկացած միավոր կամ նախագծի անուն: Սա կարևոր է, քանի որ, ըստ լռելյայն, Դելֆիի յուրաքանչյուր նախագիծ, որը կազմվում է հայտ, ունի ռեսուրսային ֆայլ նույն անունով, ինչպիսին է նախագծի ֆայլը, բայց ընդլայնմամբ ՝ «.RES»: Լավագույնն է պահպանել ֆայլը նույն գրացուցակում, ինչպես ձեր նախագծի ֆայլը:

Ծրագրերում ներառված ռեսուրսները

Մեր սեփական ռեսուրսների ֆայլը մուտք գործելու համար մենք պետք է Դելֆիին ասենք կապել մեր ռեսուրսների ֆայլը մեր դիմումի հետ: Դա իրականացվում է `կազմողի հրահանգը ավելացնելով կոդին: Այս հրահանգը անհապաղ պետք է հետևի ձևի հրահանգին, ինչպես հետևյալը.

$ R * .DFM
$ R DPABOUT.RES

Պատահականորեն մի ջնջեք {$ R * .DFM} մասը, քանի որ սա այն կոդն է, որը Դելֆիին ասում է կապել ձևի տեսողական մասում: Երբ ընտրում եք արագության կոճակների, Պատկերային բաղադրիչների կամ կոճակի բաղադրիչների բիտմապ քարտեզներ, Դելֆին ներառում է ձեր ընտրած bitmap ֆայլը ՝ որպես ձևի ռեսուրսի մի մաս: Դելֆին մեկուսացնում է ձեր ինտերֆեյսի տարրերը .DFM ֆայլում:

Ռեսուրսն իրականում օգտագործելու համար դուք պետք է կատարեք մի քանի Windows API զանգեր: RES- ի ֆայլերում պահվող Bitmaps- ը, կուրսորը և պատկերակները կարող են ստացվել API գործառույթների միջոցով LoadBitmap, LoadCursor, և LoadIcon համապատասխանաբար

Նկարները ռեսուրսներում

Առաջին օրինակը ցույց է տալիս, թե ինչպես բեռնել որպես ռեսուրս պահված բիտման քարտեզ և ցուցադրել այն a- ում Նկարագրություն բաղադրիչը:

կարգը TfrMain.btnCanvasPic (Ուղարկող ՝ TObject);
var bBitmap: TBitmap;
սկսվում է
bBitmap. = TBitmap.Create;
փորձիր
bBitmap.Handle. = LoadBitmap (hInhent, 'ATHENA');
Image1. Լայնությունը ՝ = bBitmap.Width;
Image1.Hight: = bBitmap.Hight;
Image1.Canvas.Draw (0,0, bBitmap);
վերջապես
bBitmap. անվճար;
վերջ;
վերջ;

Նշում. Եթե բեռնման բիթային քարտեզը ռեսուրսային ֆայլում չէ, ծրագիրը դեռ գործելու է, այն պարզապես չի ցուցադրի բիտմապը: Այս իրավիճակից հնարավոր է խուսափել փորձարկումներից `պարզելու, թե արդյոք այդbBitmap.Handle զանգից հետո զրո էLoadBitmap () և համապատասխան քայլեր ձեռնարկելով: Նախորդ կոդով փորձված / վերջապես մասը չի լուծում այս խնդիրը, պարզապես այստեղ է համոզվելու, որ bBitmap- ը ոչնչացված է, և դրա հետ կապված հիշողությունը ազատվում է:

Մեկ այլ եղանակ, որը մենք կարող ենք օգտագործել ռեսուրսից բիթմա-քարտեզ ցուցադրելու համար, հետևյալն է.

կարգը TfrMain.btnLoadPicClick (Ուղարկող ՝ TObject);
սկսվում է
Image1.Picture.Bitmap.
LoadFromResourceName (hInhent, 'EARTH');
վերջ;

Կուրսորը ռեսուրսներում

Էկրան.Կուրսորներ Դելֆիի կողմից մատակարարված կուրսորների մի շարք է: Օգտագործելով ռեսուրսների ֆայլեր, մենք կարող ենք ավելացնել կուրսորը Cursors- ի գույքին: Քանի դեռ մենք չենք ցանկանում փոխարինել որևէ կանխադրված լուծում, լավագույն ռազմավարությունն է 1-ից սկսած կուրսորի համարների օգտագործումը:

կարգը TfrMain.btnUseCursorClick (Ուղարկող ՝ TObject);
կոնստ NewCursor = 1;
սկսվում է
Screen.CursorsNewCursor. =
LoadCursor (hInhent, 'CURHAND');
Image1.Cursor: = NewCursor;
վերջ;

Սրբապատկերներ ռեսուրսների մեջ

Եթե ​​նայենք ԴելֆիինԾրագիր-ընտրանքներ-դիմում պարամետրերը, մենք կարող ենք գտնել, որ Դելֆին տրամադրում է լռելյայն պատկերակը նախագծի համար: Այս պատկերակը ներկայացնում է հավելվածը Windows Explorer- ում, և երբ ծրագիրը նվազագույնի հասցվում է: Մենք դա հեշտությամբ կարող ենք փոխել `կտտացնելով« Բեռի պատկերակը »կոճակը:

Եթե ​​մենք ուզում ենք, օրինակ, անիմաստացնել ծրագրի պատկերակը, երբ ծրագիրը նվազագույնի հասցվի, ապա հետևյալ ծածկագիրը կկատարի աշխատանքը:

Անիմացիայի համար մեզ անհրաժեշտ է աTTimer բաղադրիչը մի ձևի վրա: Կոդը ռեսուրսային ֆայլից երկու սրբապատկեր է բերում զանգվածիTIcon առարկաներ; այս զանգվածը պետք է հայտարարվի հիմնական ձևի հանրային մասում: Մեզ նույնպես պետք կլինիNrIco, դա տոկոսադրույքի տիպի փոփոխական է, հայտարարված էհանրային մաս TheNrIco օգտագործվում է հետևելու հաջորդ պատկերակի ցուցադրությանը հետևելու համար:

հանրային
nrIco: Հետաքրքրություն;
MinIcon. TIcon- ի array0… 1;

կարգը TfrMain.FormCreate (Ուղարկող ՝ TObject);
սկսվում է
MinIcon0: = TIcon.Create;
MinIcon1: = TIcon.Create;
MinIcon0.Handle: = LoadIcon (hInhent, 'ICOOK');
MinIcon1.Handle: = LoadIcon (hInstance, 'ICOFOLD');
NrIco: = 0;
Timer1.Interval: = 200;
վերջ;

կարգը TfrMain.Timer1Timer (Ուղարկող ՝ TObject);
սկզբնական IsIconic (Application.Handle) ապա սկսվում է
NrIco: = (NrIco + 1) մոդ 2;
Application.Icon ՝ = MinIconNrIco;
վերջ;
վերջ;

կարգը TfrMain.FormDestroy (Ուղարկող ՝ TObject);
սկսվում է
MinIcon0. անվճար;
MinIcon1. անվճար;
վերջ;

Մեջ Timer1.OnTimer միջոցառումների կառավարիչ, Պատկերացվել է գործառույթն օգտագործվում է `տեսնելու համար, արդյոք մենք պետք է անիմաստացնենք մեր հիմնական պատկերակը, թե ոչ: Դա կատարելու ավելի լավ միջոց կլինի առավելագույնի հասցնել / նվազագույնի հասցնել կոճակները և գործել:

Վերջնական բառեր

Մենք կարող ենք որևէ բան (լավ, ոչ ամեն ինչ) տեղադրել ռեսուրսային ֆայլերում: Այս հոդվածը ցույց է տվել ձեզ, թե ինչպես օգտագործել ռեսուրսները ձեր Delphi հավելվածում բիտմապի, կուրսորը կամ պատկերակի օգտագործման / ցուցադրման համար:

Նշում. Երբ մենք Delphi- ի նախագիծը սկավառակի վրա ենք պահում, Delphi- ն ինքնաբերաբար ստեղծում է մեկ .RES ֆայլ, որն ունի նույն անունով, ինչ նախագիծը (եթե ոչ այլ ինչ, ապա ծրագրի հիմնական պատկերակը ներսում է): Չնայած մենք կարող ենք փոխել այս ռեսուրսների ֆայլը, դա ցանկալի չէ:



Մեկնաբանություններ:

  1. Garret

    Բացարձակապես ձեզ հետ համաձայն է: Ինձ թվում է, շատ լավ գաղափար է: Ամբողջովին ձեզ հետ ես համաձայն կլինեմ:

  2. Gavi

    Կարծում եմ, որ սխալվում ես: Ես կարող եմ պաշտպանել դիրքը: Գրեք ինձ Վարչապետին, մենք կքննարկենք:

  3. Costin

    Ես կարող եմ առաջարկել գնալ մի կայքի, որն այս թեմայի վերաբերյալ շատ հոդվածներ ունի:

  4. Doucage

    Թանկարժեք արտահայտությունն է

  5. Fegor

    Ես հիմա չեմ կարող մասնակցել քննարկմանը. Ազատ ժամանակ չկա: Բայց ես ազատ կլինեմ. Ես անպայման կգրեմ այն, ինչ մտածում եմ այս հարցում:

  6. Ingalls

    You could not be mistaken?

  7. Billy

    Իհարկե Համաձայն եմ պատմել վերը նշված բոլորին: Մենք կարող ենք հաղորդակցվել այս թեմայի շուրջ: Այստեղ կամ վարչապետ:



Գրեք հաղորդագրություն