在 C 中从更多来源追加文本到 richTextBox 中

问题描述 投票:0回答:2

我想添加更多来自不同来源的字符串,但我似乎不起作用......
我的代码

int num = 0;
string s = std::to_string(num);
this->richTextBox1->Text = "Copying files... (" + s + "%)"; //this doesn't work

P.S:如何添加代码,如 -

num = num + 1

c++ textbox
2个回答
0
投票

它不起作用是因为

Text
属性不是
std::string

您可以使用

std::string
将结果
const char*
转换为
c_str()
:

this->richTextBox1->Text = ("Copying files... (" + s + "%)").c_str();

0
投票

从描述中并不清楚涉及哪个环境,但由于使用了C++,我假设它是带有WinForms的托管C++而不是C#。

因此,给定示例的工作代码如下所示:

// Environment is Managed C++ with .Net WinForms!
int num = 0;
std::string s = std::to_string(num);
String ^S = gcnew System::String(s.c_str()); // Convert std::string in System::String
this->richTextBox1->Text = "Copying files... (" + S + "%)"; //this code does compile now!

变量 s 对于 std::string 来说曾经很小,对于 System::String 来说曾经很大 S

虽然我不太明白问题是什么,但如何实施 num = num+1;,因为这以同样的方式工作。

也可以这样写:num+=num;

© www.soinside.com 2019 - 2024. All rights reserved.