【发布时间】:2022-01-01 11:49:24
【问题描述】:
我有一个来自 TListView 控件的字符串向量。我想将它们复制到剪贴板,然后将它们粘贴到 TMemo 控件中,这样列表中的每一行都在 TMemo 中的单独一行上。到目前为止,我尝试过的所有内容都粘贴为一行。但是在 TMemo 中复制/粘贴多行就可以了。想法?
谢谢!
【问题讨论】:
-
“字符串向量” - 你的意思是 StringList 吗?您可以将无效的代码添加到您的问题中吗?这样,乐于助人的人也许可以为您提供“想法”……您为什么要通过剪贴板进行此操作?
-
我们从应用程序中的字符串 std::vector 开始(称之为“源”)。我们想将这些字符串复制到另一个使用 TMemo 的应用程序。我们试图将字符串放入单个字符串中以传递到剪贴板,例如... ` String s; BOOST_FOREACH(String str, strings) { s += str + 0x0d + 0x0a; } cb->SetTextBuf(s.c_str()); ` 我们假设 TMemo 将解释为下一行的一些分隔符,但我们还没有找到正确的分隔符。当然,我们不确定分隔符是否存在问题。抱歉,我不知道如何在这个编辑器中格式化代码
-
没有代码很难。但是,如果“类似”的意思是“完全一样”,那么 s += str + 0x0d + 0x0a 行是错误的 - 您需要添加一个等于 CR LF 对的字符串,而不是这些十六进制常量。 TMemo 使用 CR LF 对作为分隔符。请记住,VCL 中的字符串都是 Unicode (wchar_t)(至少从 C++ builder 6.0 天开始)。
-
@RogerCigol "记住字符串在 VCL 中都是 Unicode (wchar_t)(至少从 C++builder 6.0 天开始)" - 这是不正确的。在 C++Builder 6.0 8 年后,VCL 在 C++Builder 2009 中切换到 Unicode 字符串
-
感谢 Remy 的严谨/精确。这是真的,我确实知道哪个版本改变了哪些事情混淆了,我很感激被纠正。
标签: clipboard c++builder tmemo