您好,登錄后才能下訂單哦!
本篇內容主要講解“PathView的屬性怎么用”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“PathView的屬性怎么用”吧!
PathView可以顯示內置的QML類型(如ListModel和XmlListModel)或繼承自QAbstractListModel的c++定義的自定義模型類中創建的模型的數據。 視圖有一個模型Model,它定義要顯示的數據,還有一個委托(Delegate),它定義數據應該如何顯示。為路徑上的每個項實例化委托。這些實例就可以沿著路徑移動。
PathView中屬性path的值為Path項,Quick本身內置了幾種Path用于PathView的屬性填充,一個路徑由一個或多個路徑段組成,沿著Path的項的間距可以通過PathPercent對象進行調整。PathAttribute允許沿著路徑定義帶有值的命名屬性。 Path和指定路徑元素的其他類型在PathView和Shape之間共享。Path本身是非可視類型,如果需要自定義Path則需要使用Shape
PathLine:一條到給定位置的直線,一般用在線性路徑上
PathQuad:具有單個控制點的到給定位置的二次貝塞爾曲線
PathCubic:具有兩個控制點的到給定位置的貝塞爾曲線
PathArc:有半徑到給定位置的圓弧
PathAngleArc:通過半徑和角度指定的圓弧
PathAttribute:定義路徑中給定位置的屬性
PathPercent:PathPercent允許你操縱PathView路徑上項目之間的間距。可以使用它將項目集中在路徑的一部分上,并將它們分散在路徑的其他部分上(主要用在項在路徑上的非均勻分布)
PathAttribute對象允許為路徑上的各個點指定由名稱和值組成的屬性。這些屬性作為附加屬性公開給委托,從而實現在委托中對屬性的更改而顯示出和屬性綁定的動態效果。假設有如下屬性定義
//定義一組屬性 PathAttrtube{ name:"xxProperty"; value:0.5; } //定義另一組屬性 PathAttrtube{ name:"yyProperty"; value:false; }
查看Qt幫助手冊可知,delegate屬性的值為Component,意味著我們可以自己定義關于View的代理,delegate的主要目標是提供一個在路徑上的對于模型數據的展示框架。有如下示例
PathView{ id:myPath //自定義代理 delegate:Component{ } }
此屬性保存為視圖提供數據的模型。模型提供了一組用于為視圖創建項的數據。對于大型或動態數據集,模型通常由c++模型對象提供。還可以使用ListModel類型直接在QML中創建模型,對于簡單數據,使用ListModel是最常用的,示例如下
PathView{ id:myPath model:ListModel{ } }
ListModel可以理解為一個容器,而ListElement就是這個容器中的項,一個容器中可以定義很多項,對于ListElement列表元素的定義與其他QML元素類似,只是它們包含角色定義的集合而不是屬性。使用與屬性定義相同的語法,角色既定義如何訪問數據,又包括數據本身。用于角色的名稱必須以小寫字母開頭,并且對于給定模型中的所有元素都應該是通用的。值必須是簡單的常量;或字符串。從Qt 5.11開始,ListElement還允許將函數聲明分配給角色。這意味著可以在元素中發生函數調用的動作。ListElement中定義的角色同樣地對于代理是開放的。示例如下
PathView{ id:myPath model:ListModel{ //一號元素 ListElement{ xxProperty:""; yyProperty:false; } } }
此屬性保存要用作高亮顯示的組件。將為每個視圖創建一個突出顯示組件的實例。結果組件實例的幾何形狀將由視圖管理,以便與當前項保持一致。onPath附加屬性,以確保在從路徑上彈開時高亮顯示是隱藏的
到此,相信大家對“PathView的屬性怎么用”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。