fișierele de resurse în qt - reamintește

Fiecare aplicație serioasă cu o interfață grafică cu utilizatorul (și nu numai) folosind fișierele de resurse. În acest caz, aveți două opțiuni: fie să se conecteze resursele pe căile de sistem de fișiere, sau să le plasați direct într-un fișier binar al aplicației sau bibliotecă. Fiecare dintre aceste abordări are avantajele și dezavantajele sale.

În primul caz (resurse - fișiere externe) cererea devine mai flexibilă, deoarece resursele pot fi schimbate fără recompilare, dar utilizatorii pot accidental (sau în mod specific) pentru a strica unele resurse, încălcând corectitudinea cererii. În plus, în cazul în care căile relative se abat aplicațiile, fișierele de resurse sunt nu a fost găsit.

Cu resursele, cusute într-un fișier binar, situația este exact opusul: aplicația devine monolitic dimensiunea fișierului executabil este mare, orice schimbare necesită o reconstrucție, dar perturba funcționarea acestuia în mod accidental (de exemplu, înlocuirea unei imagini) devine aproape imposibilă.

Luând în considerare toate argumentele pro și contra ultima opțiune, în cele mai multe cazuri este de preferat. Despre el vom vorbi.

Creați un fișier cu descrierea resurselor

Primul pas este de a crea un fișier cu o descriere a resurselor care vor utiliza. Ea are forma următoare (numit res.qrc):

În acest exemplu, am definit un prefix: / imagini. Acesta poate fi considerat un director de resurse logice. Astfel de prefixe pot fi orice număr. De exemplu, dacă aplicația are efecte de sunet, aveți posibilitatea să adăugați un prefix / sunete. Pentru a crea o ierarhie mai profundă, folosiți prefixele de forma / unele / lung / prefix.

eticheta Fișierele de definiție investite în legătură cu prefixul corespunzător. În exemplul inclus doar logo.png de imagine. dar aveți posibilitatea să specificați cât mai multe fișiere după cum este necesar. Utilizați căi de fișier relative, luând ca referință directorul - cel în care QRC-fișier.

Este logic să aloce în mod explicit resursele pentru subfolderele proiectului în sistemul de fișiere. De exemplu, logo.png loc imaginea în imagini /. Apoi înregistrare devine:

În acest caz, calea logică la fișierul logo.png din nou are forma: /images/logo.png.

pot fi folosite pentru aliasuri concizie, după cum urmează:

Fișierul este un mod /myprefix/logo.png logic.

Apoi, trebuie să atașați QRC-fișierul completat la proiect. Pentru a face acest lucru, adăugați în șirul pro-fișier de forma:

În -File exemplul QRC de mai sus este la același nivel cu pro -file. Dacă utilizați un fișiere mai complexe de aspect, utilizați o cale relativă.

Utilizarea resurselor în anexă

Deci, QRC-fișier este gata și conectat la proiect. Rămâne doar pentru a profita de utilizarea acestuia. Și pentru a face acest lucru nu este dificil:

Cheia aici este modul de accesare a imaginii (sau orice alt fișier) din resurse. Calea este construită după cum urmează: în primul rând, două puncte. apoi prefixul / imagini. pe care le-am ales, și în cele din urmă logo.png calea de fișier (sau pseudonimul). Orice altceva este la fel ca atunci când se lucrează cu fișiere regulate, read-only.

concluzie

Utilizați fișierele de resurse pentru Qt-proiecte este foarte ușor, așa că, dacă aveți nevoie să adăugați o imagine, muzică sau altceva în cererea dumneavoastră, ar trebui să știi acum ce să facă.


QMovie: GIF-animație în Qt


DragDrop în Qt: Mutare imagini și text


OpenCV: Instalarea și utilizarea sub Windows


Qt: Efecte de transparență pentru ferestre


QStackedWidget: Realizarea Un widget proxy pentru a bloca Ui


QWizard: Crearea Master în Qt


model Decorator și crearea de filtre de imagine în Qt


Imagini în Qt Tabelul

articole similare