问题标签 [c++builder-xe4]

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 投票
1 回答
395 浏览

c++ - Analyzing diassembled c++ code that crashes

The code below crashes when the control leaves '}'. If I replace FieldByName()->AsString with a variable or if I remove the else if that is not executed, it doesn't crash. '==' was replaced by SameText, when the AV started to occur.

Looking at the disassembly,

snip else if and else and continuing from location 53a566

The AV occurs where '>' is shown. My question is, why is there 3 creates and only 2 destroys in the first block and in the bottom there are extra 2? So if I total the executed code there are 3 creates and 4 destroys. I also don't seem to know which string corresponds to which Create and Destroy. I can figure out "RequirePO", AsString and "Y" constitutes the three Create and also one of the create points to a different address. Maybe I am not reading it right.

Help appreciated.

Regards, Mathew Joy

0 投票
2 回答
263 浏览

c++ - 使用 floorf() 函数时无法链接 Embarcadero XE4 项目

我需要使用 Math.h 中定义的 floorf() 函数,虽然我可以编译在我的 XE4 项目中成功使用的模块,但在链接时收到此错误:

这是没有意义的——当我控制单击 floorf() 函数时,编译器显然知道函数的声明位置,因为它打开 Math.h。我已经在 .cpp 文件中包含了#include。我需要什么才能让这个工作?我真的需要使用这个标准的数学函数。

0 投票
1 回答
270 浏览

delphi - TChart lite 组件功能

RAD Studio XE4 环境中包含的 TChart lite 组件是否支持 GDI+ 渲染?特征矩阵不考虑它。

http://www.steema.com/featurematrix/vcl

在安装目录中搜索我发现文件 VCLTee.TeeGDIPlus.hpp 包含类 TGDIPlusCanvas 的声明。

如果是,那么如何启用它?

0 投票
0 回答
638 浏览

c++builder - 如何修复“DWORD”和“Fibplatforms::DWORD”之间的歧义

我正在使用 RAD Studio XE4 中的 FIBPlus 组件。在编译期间,我有歧义错误。有人提议在此链接中修复它,但它不起作用。

这是错误

0 投票
0 回答
597 浏览

vba - Excel 自动化 - 设置单元格字体

这是我设置Excel工作表内容的原始代码。简而言之,代码遍历所有行和列并设置三项内容:单元格内容、单元格字体颜色和单元格背景颜色:

以前的代码即使功能正常也有一个缺点,即速度。来自 COM 接口的每个函数调用都有一些开销(cca 1 - 3 ms)。要生成由 900 行 x 6 列组成的表格,我需要大约 38 秒,这与当今计算机的性能相比是不可接受的。所以我优化了代码。我不是逐个单元格地设置单元格,而是首先将内存中的整个数据准备在一个大数组中,然后一步设置整个工作表的内容。稍后我可以进一步优化它以最小化我的应用程序的内存需求。例如,我可以将一步写入的最大行数限制为 100。但这与我的问题无关。这是我的优化代码:

现在我正在尝试对单元格字体使用相同的机制。是否可以准备字体颜色数组(每个单元格可以使用不同的颜色)并在一次调用中为工作表设置它?

PS 答案最好用 C++,但也可以用 Delphi。

0 投票
0 回答
61 浏览

comctl32 - TListBox OnDrawItem 导致 AV 在 COMCTL32.dll

我已经缩小了我的应用程序生成从 COMCTL32.dll 到 TListBox::OnDrawItem 的访问冲突的原因。TListBox.Style 是 lbOwnerDrawFixed。

应用程序使用 C++ Builder XE4 构建,在 Win7-64 和 Win8-64 上运行。我可以在 Win7 上实现它,但只能从 IDE 内部实现,而且只是偶尔发生;Win7 上的发布版本不会引发错误,但在 Win8 上每次都会引发错误。

这仅在首次创建表单时发生。表单包括移动到下一个/上一个记录的按钮,它调用所有控件填充代码,但这些调用从来没有问题;只有在表单构建后的第一次。

表单构造函数将 TTimer 设置为暂停 100 毫秒。TTimer::OnTimer 调用将数据加载到控件中的函数。加载 TListBox 后,将调用 OnDrawItem 事件。

如果我将 TListBox.Style 设置为 lbStandard 并删除自定义 OnDrawItem,则没有问题。

这是 OnDrawItem 处理程序的示例:

我已经测试以确保 TListBox.Canvas 不为 NULL,但它没有任何区别;显然它总是非空的。

我不知道如何从这里着手,欢迎提出建议。

谢谢,凯瑟琳

0 投票
2 回答
754 浏览

model - 如何在运行时在 FireMonkey 中加载 3D 模型

我可以通过属性 meshCollection 加载 3D 模型,就像Importing a 3D Model in a FireMonkey Application 一样

但它无法加载模型Model3D->LoadFromFile("filepath.obj")

我尝试了很多时间,但它仍然不起作用!

这是 Firemonkey XE4 的错误吗?

0 投票
0 回答
795 浏览

firemonkey - 如何在 FireMonkey 的 TMesh 对象中绘制颜色?

我想画不同的颜色,这是我的代码:

我该怎么办?它必须使用彩色地图吗?就像:

http://edn.embarcadero.com/article/42114

而 TMesh 对象有 4 个颜色属性:

这是什么意思?如何使用它?

0 投票
2 回答
1047 浏览

c++builder - C++Builder > binary number 0b1 causes error E2141

I am using C++ Builder XE4.

I am trying to use a binary number such as 0b1 in my code.

Following is the code I tried:

The above causes a compiler error:

Unit1.cpp(19): E2141 Declaration syntax error

Does C++Builder support binary numeration like this?

I confirmed that 0x11 works in C++Builder.

I also confirmed that 0b11 can be used in IDEOne using C++:

http://ideone.com/oy4aIZ

0 投票
0 回答
115 浏览

c++ - 在 XE4 c++ VCL 应用程序中保存打印机属性

我正在尝试通过以下方式将一些打印机属性(即页面大小)保存到 ini 文件中:

代码在内部 if 语句中,但是当我检查printerDeviceMode变量时,只有dmDeviceName看起来是正确的。许多其他设置似乎是垃圾(包括dmPaperSize):

printerDeviceMode 的调试检查器窗口的图像

注意dmSize是0。

我尝试使用 TPrinterSetupDialog 组件更改打印机的页面大小,但值dmPaperSize保持不变。

我在某个地方错过了一步吗?

这是一个 XE4 c++ builder VCL 项目。