问题标签 [c++builder-10.2-tokyo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
51 浏览

firemonkey - C++ 构建器中的受控崩溃(练习调试 iOS FireMonkey 应用程序)

我想在崩溃后尝试象征性。我正在 C++ Builder 10.2.3 (Tokyo) 中构建我的应用程序。我怎样才能在代码中故意导致崩溃 - 以一种受控的方式。

谢谢,拉斯

0 投票
0 回答
165 浏览

cmake - 在 Embarcadero 中使用 CMake

我正在尝试让 CMake 与 Embarcadero 10.2.3 (Tokyo) 一起使用。我看到了一些帮助和博客。我看起来很好(到目前为止我还没有尝试过),但我对现有的 cbproj 文件感到困惑。我的印象是,如果我需要从 IDE 构建,我需要一个 CMake 文件列表 (CMakeLists.txt) 以及一个 cbproj 文件。所以在这种情况下,任何时候我需要添加文件或设置我都需要做。这是真的?

谢谢。

0 投票
1 回答
19 浏览

c++builder-10.2-tokyo - 10.2 Tokyo Debugger 不工作(蓝点不显示)

我已经尝试了至少一周,试图弄清楚为什么 Builder 10.2 Tokyo 的调试器不工作。缺乏关于此的信息(即使在 Wiki 上)也无济于事。

我们最近从 CB 2010 迁移了代码,调试器有时可以工作。当你清理一个包并构建时,它有时会起作用。

我在某处读到它可能与网络驱动器上的源文件有关。构建项目时,文件状态为“无调试信息”

项目选项从将 C++ 编译器 > 调试 > 调试信息设置为 true 的选项集中加载。

有任何想法吗?我们的项目处于停滞状态,因为我们无法执行任何调试。谢谢!

0 投票
1 回答
230 浏览

clang - 将旧项目从 C++Builder 10.2 迁移到 10.2.3 在运行时崩溃

我很难将我们的旧 C++Builder 10.2 项目升级到 10.2.3(我们在 64 位 PC 上使用 Clang 编译器,32 位应用程序)。

10.2.3 安装顺利(在干净的 Windows 10 PC 上), - 项目编译和链接 - 到目前为止,每个人都很开心。

但是,当在调试器中运行应用程序时,我可以看到thisMainForm 的指针(由于历史原因,一个相当大的对象)在单个方法调用调用中突然变为垃圾(当调用它自己的方法之一时 - 就在构造函数完成),这会导致严重的失败。

我试图注释掉__fastcall特定方法的调用约定,然后调试器走得更远,但是__fastcall由于this指针损坏(我们有 1000 多个方法__fastcall,所以将它们全部注释掉)不是一个选项)。

有谁知道发生了什么?

也许是一个新的 Clang 编译器开关?

大物体的问题?

我还尝试在 10.2.3 中从头开始构建一个全新的项目 - 但没有运气 - 同样奇怪的事情发生了。

0 投票
1 回答
307 浏览

c++builder - 包含在 Embarcadero C++ Builder 中生成的 VCL 样式实用程序的 .hpp 文件时出错

我想在 Embarcadero C++Builder 10.2 Tokyo 中使用库“VCL Style Utils”。

所以我创建了一个新项目并添加了:

构建成功并.hpp为这些文件生成.pas文件。

然后我创建另一个项目并包含.hpp生成的文件。

但是在构建时出现此错误:

[bcc32 错误] Vcl.Styles.Utils.Menus.hpp(164):E2040 声明错误终止。

这是 Vcl.Styles.Utils.Menus.hpp 的第 163 和 164 行:

为什么这些声明不正确?

0 投票
1 回答
93 浏览

c++ - 为什么鼠标按下会阻止重新绘制组件?

我正在尝试创建一个捕获鼠标事件的自定义组件,尤其是 MouseMove。

我派生自TWinControl,但我也尝试过TGraphicControl, TCustomControl,TTrackBar等。

我的问题是当我在组件上按住鼠标时,它没有被重新绘制。

在我释放鼠标按钮之前,不会调用该Paint()方法,即使我调用Invalidate().

TrackBar 是我想要制作的最接近的组件。您选择刻度,然后用鼠标移动它。但您不必释放鼠标即可看到刻度同时移动(再次绘制组件)。

如果我直接调用Paint(),它可以工作,但背景不会被删除。

我错过了什么?

编辑:我再次尝试并确认是否按住鼠标,Invalidate(); 仅当我释放鼠标时才考虑通话。用下面的代码试试你自己,paint 仅在发布时调用:

0 投票
1 回答
326 浏览

c++builder-10.2-tokyo - UnicodeString::Delete 方法

我有一个 Unicode 字符串,我想限制为 30 个字符。我从查询中填充字符串,所以我不知道开始的长度。我想简单地剪掉所有超过30的字符。我找到了UnicodeString::Delete()方法,但我不知道如何使用它。

我试过这个无济于事:

0 投票
0 回答
72 浏览

regex - 从 ^ 替换为空会将 ^ 匹配到新位置

我正在尝试删除字符串中的第一个0和最后一个,但我没有得到:10021102121

表达式的一个类似问题^.- 它不是只删除第一个字符,而是将它们全部删除。

我怎样才能解决这个问题?我正在使用 C++Builder 10.2.3 Tokyo。


Javascript 中的相同代码可以正常工作:

在 C++ 中,如果我使用 g++ 和std::regex它可以工作

0 投票
1 回答
59 浏览

c++builder - 无法从“TFmxChildrenList”转换为“TRectangle *”

我是使用 C++ Builder 的新手,如果我犯了任何基本错误,我深表歉意。

我绘制了一个名为“Collection”的 TLayout,其中包含一个 5x5 的 TRectangle 网格。细胞被命名为“CellXY”。我认为在表单上绘制这些内容可能比用代码实例化它们更容易,现在我不这么想,但我仍然想以这种方式解决问题以更好地理解。

我正在尝试编写一个方法,该方法将返回一个指向 TRectangle 的指针,其名称包含传递给该方法的坐标。

目前,我正试图通过迭代 TLayout 集合的孩子来做到这一点:

但我得到一个错误阅读:

如果有人可以提供帮助,我将不胜感激!

0 投票
1 回答
1884 浏览

vcl - 在运行时更改 TBitBtn 字形

我有一个带有 TBitBtn 的 VCL 表单和一个包含 2 个位图的 TImageList。在运行时,我运行以下代码行将其中一个位图放在我的 TBitBtn 上:

这成功地将位图放在 TBitBtn 上。然后稍后我运行以下代码行来更改位图,但没有任何反应:

两个位图都存在于图像列表中(0 和 1)。我可以交换代码行并证明图像列表没有问题。 这是一篇旧帖子,其中一个人似乎在 Delphi 中解决了这个问题。我想我必须先以某种方式清除字形,但我不知道如何在 C++ 中。