无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

[UE4圖文系列]8_2.樹(shù)形圖 C++版(一)

2023-07-28 16:40 作者:埃羅芒阿Sensal  | 我要投稿

經(jīng)過(guò)上一篇的說(shuō)明,已經(jīng)對(duì)樹(shù)形圖的三個(gè)組成要素(Item,Entry,TreeView)進(jìn)行了簡(jiǎn)單的講解,本篇正式開(kāi)始C++版的教程.

1.創(chuàng)建以下三個(gè)C++類(lèi)

(1)UTreeViewItemBase(基類(lèi)UObject)

該類(lèi)型為樹(shù)形圖三要素中的Item

①Level:決定Item對(duì)應(yīng)Entry的在樹(shù)形圖中的層級(jí)結(jié)構(gòu),如下圖

1-1

②Label:Entry顯示的文本

③SelfActor:? ? ? Actor<------>Item<------>Entry. ItemActorEntry之間的橋梁,如下圖

1-2

④ChildrenData:存儲(chǔ)本級(jí)Item的子級(jí)Item對(duì)象


(2)UEntryWidgetBase(基類(lèi)UUserWidget,實(shí)現(xiàn)接口IUserObjectListEntry)

該類(lèi)型為樹(shù)形圖三要素中的Entry

①CheckBox,TextBlock,HorBox控件,如下圖

1-3

②ListItemObject:Entry對(duì)應(yīng)的Item


(3)UTreeViewPanelBase(基類(lèi)UUserWidget)

該類(lèi)型為樹(shù)形圖三要素中的TreeView


2.成員函數(shù)說(shuō)明


(1)UTreeViewItemBase?

類(lèi)中定義以下成員函數(shù)

解析:

①I(mǎi)nitChildren

該成員函數(shù)用于查找SelfActor存在多少個(gè)子級(jí)Actor,然后為每個(gè)子級(jí)創(chuàng)建子級(jí)Item,并將子級(jí)Item子級(jí)Actor建立對(duì)應(yīng)關(guān)系.

ps:初始化子級(jí)時(shí)要注意,子級(jí)可能也有子級(jí),所以需要通過(guò)遞歸逐級(jí)往下初始化


②SetChildrenHiddenInGame

該成員函數(shù)用于控制子級(jí)Actor(包含自身)的顯隱性,如

2-1

③CacheOriginalMaterials

該函數(shù)用于緩存SelfActor的初始材質(zhì)


④OnSelected

該函數(shù)實(shí)現(xiàn)了點(diǎn)擊Entry,使其對(duì)應(yīng)的Actor高亮(被選中效果)?,效果如參考圖2-1


⑤UnSelected

該函數(shù)實(shí)現(xiàn)了取消選中效果,使其對(duì)應(yīng)的Actor由選中高亮效果恢復(fù)到初始材質(zhì)

⑥FindSubItemByGivenActor

該函數(shù)用于查找與給定Actor對(duì)應(yīng)的Item,用于點(diǎn)擊Actor反向定位樹(shù)形圖中的Entry,如下圖

2-2

UTreeViewItemBase說(shuō)明到此結(jié)束,后續(xù)內(nèi)容會(huì)在第二篇更新,敬請(qǐng)期待


[UE4圖文系列]8_2.樹(shù)形圖 C++版(一)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
依安县| 平潭县| 五莲县| 乳源| 乃东县| 平塘县| 思南县| 甘洛县| 东兰县| 武穴市| 庆元县| 阿鲁科尔沁旗| 宕昌县| 安多县| 桂东县| 淮北市| 稷山县| 深水埗区| 惠水县| 济阳县| 南投县| 邛崃市| 定远县| 宁夏| 舒兰市| 阿勒泰市| 江门市| 宁晋县| 榆树市| 扬中市| 麻江县| 和林格尔县| 曲松县| 湟源县| 灌云县| 马龙县| 遵化市| 厦门市| 肇东市| 卢氏县| 富民县|