FText 要如何使用
本帖最后由 cow1330 于 2019-3-23 17:42 编辑小弟正試著物品的設定,之前是FString是是沒問題,但改用 FText 就會出錯
可以請教一下 FText 要如何使用
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "ItemsData")
FText Description;
嚴重性 程式碼 說明 專案 檔案 行 隱藏項目狀態
錯誤 C2440 '正在初始化': 無法由 'FText' 轉換為 'FString' ActGame C:\Users\user\Documents\Unreal Projects\ActGame\Source\ActGame\Private\Items\ItemsBase.cpp 24
-------------------------------------------------------
小弟有試著添加這個語法,也是不行
FItemsDataTable::FItemsDataTable()
{
this->Description = FText::FromString("No Description");
}
这个地方就应该用 FString。按我的理解,FString 是真的存储有字符串,而 FText 存储的是字符串的编号。这二个可以用一定的方法来转换,但没有必要。该用 FString 的地方,你用 FText 也节省不了资源 本帖最后由 cow1330 于 2019-3-24 09:26 编辑
小弟是參考這個範例的
https://github.com/Heite92/UE4_I ... ory/InventoryItem.h
上面的物品 name 和 Description就用 FText,我照抄也是錯,也不知是作麼回事
但我稍微了解一下 FText 跟本地化有關 (應該是把FText的文字轉成設定好的語言文字吧?)
所以想學習 一下,看是為什麼會錯 我在电脑上尝试了一下,是可以的。
我感觉你的 C++ 语法是不是有点问题。一般我们写
Description = FText::FromString(TEXT("No Description"));
另外前面我说 FText 只存储字符串编号,可能是记错了,应该是 FName 只存储编号。 本帖最后由 cow1330 于 2019-3-25 10:22 编辑
我試了還是不行,我猜可能是版本的問題吧,我的是4.16.3版的,
如果讀的沒錯的話,範例應該是4.18版,可能之後有修正吧
個人電腦太老舊了,4.17版本以上會出問題,要再一段時間才會升級
C++ 其實小弟也還在學,至於為啥要加 this->
也是看範例抄下的,小弟也不太清楚上面為啥要加這個語法
反正想說先先抄下來,再來試看看,但小弟測試過之後
感覺有加沒加好像也沒差
页:
[1]