Cara menggunakannya di QML untuk Telepon Ubuntu

10

Dokumentasi Alat Bantu Antarmuka Ubuntu mendokumentasikan Mereka untuk Elemen QML dengan sintaksis yang sangat mirip dengan CSS. Kedengarannya luar biasa bagi saya, tetapi saya tidak dapat memulainya. Saya telah mencoba banyak tetapi saya kira saya kehilangan jawaban untuk beberapa pertanyaan mendasar:

  1. Apakah ada aturan tentang tempat untuk menempatkan file .qmltheme dan bagaimana cara menamainya?
  2. Bagaimana referensi dilakukan? Apakah aturan gaya yang saya atur dalam file .qmltheme secara otomatis ditambahkan ke elemen yang memiliki nama masing-masing yang ditetapkan? Atau apakah saya harus entah bagaimana menetapkan referensi dalam file .qmltheme ke file yang mengandung elemen QML, atau sebaliknya, atau keduanya?

Mungkin saya tidak mengerti bagian penting dari dokumentasi. Bahasa Inggris bukan bahasa ibu saya dan oleh karena itu dokumentasi khusus ini sulit didapat untuk saya.

Joshua Gleitze
sumber

Jawaban:

4

Sayangnya dokumentasi tidak menjelaskan bagaimana aplikasi harus bertema, terutama bahwa bagian ini tidak sepenuhnya diimplementasikan. Namun aplikasi masih dapat memuat file tema di mana mereka mengubah gaya yang ditentukan sistem dan menentukan gaya mereka sendiri.

  1. Tidak ada aturan khusus di mana harus meletakkan file tema khusus aplikasi. Namun, itu harus di tempat aplikasi tahu dan dapat mengakses. Tema dapat dimuat menggunakan Theme.loadTheme(url)fungsi, di mana urlURL / URI ke .qmlthemefile. Misalnya, dengan asumsi file tema ada di folder "theme" relatif terhadap folder aplikasi, Anda seharusnya memilikinyaTheme.loadTheme(Qt.resolvedUrl("./theme/mytheme.qmltheme"))

  2. Saya tidak yakin saya mengerti apa yang Anda maksud dengan "referensi" di sini. Apakah Anda merujuk pada bagaimana komponen yang ditata akan tahu gaya mana yang akan digunakan, atau Anda merujuk pada bagaimana elemen-elemen QML yang menyediakan visual akan ditautkan ke komponen yang ditata?

zsombi
sumber
1
TypeError: Property 'loadTheme' of object UCTheme(0x7fc01c4ce980) is not a functionApakah ini eksperimen yang telah mencapai ujungnya, atau haruskah kita mengharapkan ini bekerja di masa depan? Satu-satunya sisa dokumen tampaknya adalah people.canonical.com/~dpm/sdk-docs/html.orig/…
andrewsomething