
Qt 6.10 stigne Prepuno poboljšanja za razvojne programere aplikacija i uređaje, s novim značajkama koje se kreću od pristupačnosti i dizajna sučelja do zvuka, grafike i podrške za platformu. To je verzija koja olakšava svakodnevni život bez obzira radite li u QML-u i Qt Quicku ili nastavljate s C++ i Qt Widgetima.
Osim naslova, postoje promjene koje izravno utječu na produktivnost: sustav izgleda sličan flexboxu u Qt Quicku, proširena vektorska animacija (SVG i Lottie), nove kontrole poput SearchFielda i puno čišći načini povezivanja C++ podataka s QML sučeljima. Također postoje napredak u Androidu, macOS/iOS-u, Windowsu i Linuxu, i dobar broj malih sjajnih detalja u modulima kao što su Qt Graphs, Qt Quick 3D, Qt Multimedia ili Qt Core.
Pristupačnost i visoki kontrast u Qt 6.10
Pristupačnost značajno napreduje: Ugrađeni Qt stilovi sada poštuju Automatski prilagođava postavke visokog kontrasta sustava na računalu i mobilnim uređajima. To pomaže u održavanju vizualne konzistentnosti s ostatkom okruženja i usklađenosti s propisima bez dodatnog rada.
Način na koji su Qt widgeti i Qt Quick kontrole izloženi pomoćnim tehnologijama (npr. čitačima zaslona) je revidiran, s bolja integracija s temeljnim platformamaNapredak je posebno značajan u WebAssemblyju, a mnoga od ovih poboljšanja doći će i u LTS grane u nadolazećim ažuriranjima održavanja.
Qt 6.10 brže gradi sučelja
Qt Quick se nastavlja razvijati kako bi iterirao brže, smanjio prilagođeni kod i postigao moderna, responzivna korisnička sučelja. Debitira verzija 6.10. novi izgled flexboxa, podrška za vektorsku animaciju je proširena i pojavljuje se kontrola SearchField spremna za korištenje.
Flexbox raspored za Qt Quick
FlexboxLayout je uključen kao "tehnički pregled", sustav inspiriran CSS-ovim Flexible Box Layoutom koji se integrira s mehanizmom izgleda Qt Quicka (uključujući pridružena svojstva za konfigurirati ponašanje svake stavke). Dizajniran je za sastavljanje responzivnih sučelja u nekoliko minuta i održavanje solidnih performansi tijekom izvođenja.
Qt je već nudio nekoliko izgleda za adaptivna sučelja, ali s FlexboxLayoutom je lakše prilagoditi različite veličine/aspekte ekrana i ublažiti varijacije duljine teksta zbog internacionalizacije ili tipografskih preferencija.
Animirana vektorska grafika: SVG i Lottie
Nakon nekoliko verzija koje su pojačale podršku za vektorsku grafiku (Qt Quick Scene Graph, Qt Quick Shapes i poboljšanja SVG-a), u verziji 6.10 dodana je podrška za vektorske animacije u SVG i Lottie slikama. Qt Lottie modul proširuje raspon podržanih modernih datoteka, a zahvaljujući VectorImageu, moguće je prikazati Lottie kao skalabilan, hardverski ubrzan vektor.
Osim toga, ugrađen je alat lottietoqml za pretvaranje Lottie datoteka u Qt Quick scene izravno u QML-u, nadopunjujući tok koji je svgtoqml započeo.
Nova Qt brza kontrola: SearchField
SearchField je specijalizirano polje za unos podataka za pretrage s ugrađenim stilovima i izvorni izgled na glavnim platformamaPrikazuje relevantne prijedloge u filtriranom padajućem izborniku dok tipkate, a pokreće ga modeli koje možete navesti putem standardnih QML putova podataka.
Ovaj dio se posebno dobro uklapa u poboljšanja u razmjeni podataka između C++ koda i Qt Quick korisničkih sučelja: nova značajka u verziji 6.10 omogućuje lakše povezivanje C++ modela s kontrolama poput SearchFielda bez pribjegavanja opširnim predlošcima.
Integrirajte svoje podatke u QML s manje problema zahvaljujući Qt-u 6.10
Qt nudi više mehanizama za povezivanje C++ logike s QML prezentacijom (singleton-i, QAbstractItemModel, svojstva konteksta, QObject objekti itd.) i alate kao što su QtCreator 8Ipak, izgradnja potpune dvosmjerne integracije mogla bi zahtijevati previše ponavljajućeg kodaU Qt 6.10 ta je barijera snižena novim API-jima i tipovima dizajniranim za stvarni rad.
QRangeModel
Stiže QRangeModel, lagana implementacija QAbstractItemModel za prikazivanje C++ raspona kao std::vector, std::array ili bilo koji iterabilni kontejner izravno u prikaze u Widgetima i QML/Qt Quick prikazima. Radi s jednostavnim vrijednostima (npr. int) i složenijim tipovima (Q_GADGET ili std::tuple), generirajući odgovarajuće uloge bez ručnog pisanja modela.
Ako koristite gadgete, QRangeModel izlaže svako svojstvo kao imenovanu ulogu, tako da QML delegati mogu veza s potrebnim svojstvima na tipizirani način. U praksi eliminirate potrebu za ručnim upravljanjem ulogama ili zlouporabom svojstava konteksta, a sve se uklapa s kompiliranim QML-om.
delegateModelAccess: izravno pisanje od strane delegata
Do sada je za pisanje u model iz delegata obično bio potreban objekt modela ili su se koristila svojstva konteksta. S verzijom 6.10, jednostavno aktivirajte delegateModelAccess u načinu rada ReadWrite tako da delegati mogu prirodno pisati kroz potrebna svojstva.
Nova mogućnost radi na svim Qt prikazima: Instantiator, Repeater, ListView, GridView, TableView, TreeView, MapItemView i Repeater3D. Sastavljanje korisničkih sučelja koja se mogu uređivati To ga čini predvidljivijim i konzistentnijim s dobrim QML praksama.
Sinkronizator: sinkronizacija više svojstava
Godinama tražen, debitira element Synchronizer kako bi se osiguralo da nekoliko nekretnina dijeli istu vrijednost kad god je to moguće, bez prekidanja ikakvih veza u bilo kojem od njih. Veze su se prije kombinirale s rukovateljem signalima, a to je najbolje funkcioniralo za kontrole implementirane u C++.
Sa Synchronizerom sve se svodi na jedan element koji podržava n svojstava i C++ i QML ciljeve. Dostupan je u modulu Qt.labs.synchronizer i dolazi kao tehnički pregled.
Model stabla u QML-u
Izlaganje podataka stabla Qt Quicku je prije uključivalo implementaciju QAbstractItemModel-a. QRangeModel to pojednostavljuje iz C++-a, ali ponekad želite deklarirati stablo izravno u QML-u za prototipove ili male skupove podataka. Tu dolazi do izražaja QML tip TreeModel.
Pomoću TreeModel-a definirate čvorove s JSON-stilom niza i sintaksom rječnika, dodjeljujete parove ključ-vrijednost svakoj stavci i koristite ih u prikazima poput TreeView-a bez pisanja složene infrastrukture. Omogućuje vam iteraciju korisničkog sučelja velikom brzinom prije prenošenja strukture u C++ ako je potrebno.
SortFilterProxyModel u QML-u
Na C++ strani, QSortFilterProxyModel koristimo godinama. Qt 6.10 donosi njegov deklarativni pandan u QML za sortiranje i filtriranje podataka s API-jem prilagođenim povezivanju. Uključuje sortere temeljene na ulogama (poput RoleSortera) i reaktivne filtere funkcija (koje možete nadjačati) kako bi popisi i tablice bili ažurni.
Ideja je da se cjevovodi za sortiranje i filtriranje mogu sastavljati izravno u QML-u, s sažet i ekspresivan kod, bez žrtvovanja performansi ili jasnoće.
Održite svoj proizvod modernim uz Qt 6.10
Sustavi se razvijaju, a korisnici očekuju da će njihove aplikacije raditi na najnovijim uređajima i verzijama. U verziji 6.10 postoje Uzbudljiva poboljšanja platforme koji olakšavaju taj kontinuitet, kao što pokazuju projekti izvedeni iz Qt-a kao što su LXQt 2.0.
Android: Trenutna podrška i novi alati
Qt 6.10 objavljuje službenu podršku za Android 15 i 16, s prilagodbama sustava izgradnje i podrškom za stranice od 16KB. To vam omogućuje da ciljani trenutni hardver bez ikakvih iznenađenja, održavajući stabilnost i performanse.
Predstavlja se Qt Jenny 1.0, generator koda koji generira JNI poveznicu iz anotiranih Java klasa. Sastoji se od kompajlera i procesora za anotacije, generirajući Qt C++ API-je temeljene na QJniObjectu za pristup izvornim uslugama kao što su BatteryManager, PowerManager ili AudioManager. čak pojednostavljuje obavijesti, koji su često složeni putem JNI-a. Dostupan je na Maven Centralu i dolazi s primjerima u Qt Creatoru i online dokumentaciji.
Upravljanje početnim zaslonom također je poboljšano od Androida 12, izbjegavajući dvostruki ekrani dobrodošlicePreporučeni pristup je korištenje namjenske SplashActivity, postavljanje tema s prozirnošću i pokretanje Qt aktivnosti kada je Android spreman, postižući besprijekoran prijelaz.
macOS i iOS 26
Prvo manje izdanje od izlaska macOS-a 26 "Tahoe". Novi dizajn Liquid Glass-a i promjene u arhitekturi renderiranja predstavljale su izazove koje je Qt riješio. ponuditi punu podrškuMnoga poboljšanja bit će prenesena u LTS grane (6.8 i 6.5) u nadolazećim zakrpama.
Windows: Qt WebView s WebView2
Qt WebView uključuje implementaciju temeljenu na WebView2 za korištenje Microsoft Edgea kao mehanizma. Na taj način možete ugraditi web sadržaj s izvornim preglednikom sustava i implementirati na Windowsima bez povlačenja Qt WebEnginea, smanjujući time prostorni otisak.
Linux i multimedija
Qt Multimedia dodaje izvorni backend za PipeWire, s poboljšanom latencijom i kontrolom za obradu sadržaja i hardver (npr. aplikacije poput Mixxx 2.5), pored tanja podrška u kontejneriziranim okruženjimaKompenzacija visine tona zvuka dodaje se kako bi se održala kvaliteta prilikom ubrzavanja ili usporavanja pjesama.
Ugrađeni hardver
Na uređajima, Boot to Qt usvaja Yocto 5.2 "Walnascar" i pojavljuje se prilagodbe za Ezurio dušikove pločeCilj: ubrzati vrijeme izlaska na tržište moderne opreme, s ažuriranim stogovima.
Druga značajna poboljšanja u Qt 6.10
Qt Quick 3D sada omogućuje Jednostavno ispecite svjetlosne mape za povećanje kvalitete uz visoke performanse i pokretanje efekata čestica u obrnutom smjeru, korisno za simuliranje utjecaja kiše ili snijega na vaše modele.
Qt Graphs dodaje novu ispunjenu površinu, bolju podršku za više osi, prilagodljiv 2D z-redoslijed i mogućnost renderiraj dio 3D grafike ispisiva slika. U katalog je dodana i nova grafika ispunjene površine.
U Qt Widgetima, kreirajte prilagođeni delegati Jednostavnije je i ima precizniju kontrolu povlačenja i ispuštanja u prikazima stavki. Izgledi vam omogućuju pojedinačno konfiguriranje ograničenja veličine.
Virtualna tipkovnica sada uključuje Latvijska distribucija, proširujući jezičnu pokrivenost. A u Qt Coreu, API-ji su poboljšani za rad s lokalizacijama, XML dokumentima i nizovima za nastavak.
U Qt GUI-ju, QRhi backend dodaje popis 3D adaptera pri korištenju Direct3D 11/12 ili Vulkan, što olakšava odabir grafičkih kartica na računalima s više grafičkih kartica.
Uvedeni su poboljšanja performansi u QGrpcHttp2Channel, što koristi aplikacijama koje koriste gRPC umjesto HTTP/2 u zahtjevnim scenarijima.
Više o Qt-u 6.10
Wayland prima upravljanje sesijama, ključna komponenta za moderne integracije s radnom površinom, a za komponente poput kompozitora (npr. KWin) dodane su korisne grafičke obavijesti o resetiranju.
Qt WebEngine uključuje podršku za Chromiumova proširenja, što je dugogodišnji zahtjev korisnika preglednika temeljenih na QtWebEngineu. To otvara vrata projektima poput Falkona da koriste isti ekosustav proširenja koji već koristite u Chromiumu.
Uz izravnu podršku za Lottie u VectorImageu, alat lottietoqml pojednostavljuje Unesite animacije u QML svijet, proširujući svoj kreativni arsenal bez žrtvovanja performansi.
Qt 6.10 je važan korak prema razvoju pristupačnijih i modernijih sučelja, integraciji C++ podataka u QML s manje trenja i besprijekornom implementaciji na najnovije platforme - sve to uz dodavanje praktičnih multimedijskih, grafičkih i ključnih značajki koje se odražavaju i na performansama i na kvaliteti konačnog proizvoda. Ako imate Qt u svom steku, ovo ažuriranje zaslužuje mjesto na vašem planu.