2

だから私は最近 SFML を使っていて、sf::String にどのように「追加」できるのか疑問に思っていました。

例えば:

sf::String exampleText;
exampleText.SetText("I say: ");
exampleText += "Blah";

結果: "私は言う: 何とか"

4

2 に答える 2

5

sf::string は、従来の文字列クラスではなく、テキストをグラフィカルに表示するためのクラスであることを意図しているため、意味のある追加メソッドを提供しません。

そのため、通常の char 配列/文字列/文字列ストリーム クラスを使用して文字列操作/追加操作を舞台裏で実行し、sf::string::SetText を呼び出して更新する必要があります。

于 2011-01-01T00:39:44.733 に答える
3
sf::String exampleText;
exampleText.SetText("I say: ");
std::wstring toAppend(L"Blah");
exampleText.SetText(exampleText.GetUnicodeText() + toAppend);

それを試してみてください。使ったことはないsfですが。

GetUnicodeText戻りますstd::wstring。そして、それを使う+ことでうまくいくかもしれません。それを試してみてください。

または(SFドキュメントをよく見たので)

exampleText.SetText(exampleText.GetText() + "Blah");

GetText()std::string を返します と の両方をSetText()受け入れますwstringstring

于 2011-01-01T00:38:40.730 に答える