问题标签 [c++builder-xe7]
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.
properties - C++(Builder XE7)枚举类型属性神秘行为
我不是 C++ 专家,但需要将旧项目更新为 Embarcadero C++ Builder XE7。
此代码无法编译(fpFixed 行):
音高在哪里:
和
错误:“E2451 未定义符号 'fpFixed'”
另外两次尝试:
两者都有错误:E2108 typedef 'TFontPitch' 使用不当
但这 - 奇怪的是 - 编译,没有警告:
这是什么解释,我在这里做错了吗?刚刚通过反复试验得出了这个“解决方案”。
c++ - 以 64 位导出 C 接口
我有一个在 XE7 中完成的 dll 就绪接口,我想在 Visual Studio 2013 中使用。在 32 位中工作正常,但在 64 位中,我在尝试调用接口类的任何方法时遇到异常。
Embarcadero XE7 项目是这样的:
在 Visual Studio 中,我执行以下操作:
我不知道为什么会在 64 位中崩溃。
提前致谢。
伊格纳西
preprocessor - C++ Builder 文件版本不正确
我已经在 Project->Options->Version Info 中设置了文件版本(是的,勾选了“包含版本信息”)。
例如,我在所有发布配置中设置了 FileVersion: 0.95.1.73。但是当我重建时,文件版本总是设置为 0.7.8.28
我将 FileVersion 设置为什么并不重要,我总是得到 0.7.8.28。版权文本也来自一个非常旧的版本。
我试图清理删除项目的 Win32/Release 文件夹中的所有文件 obj、res、tds 等。但是每次都是一样的结果。
项目文件 (XML) 的新 FileVersion 为 0.95.1.73。这个问题只发生在发布配置上,调试配置工作正常。
任何线索在哪里看?任何可以覆盖它的编译器/预处理器指令?
c++ - 将默认构造的对象传递给函数时出现“E2188 表达式语法错误”
有人可以帮助解释上述错误吗?它使用 Embarcadero 的 XE7 发生。使用 Visual Studio 可以很好地编译相同的代码。XE7 上的问题,如图所示,只出现在test
方法的第二行,所有其他情况编译正常。
编辑 对不起,我在示例中粘贴了错误的构造函数,现在已修复。当被括号括起来时,带有布尔参数的构造函数可以编译,但无参数的构造函数不会编译。
c++ - 设置 Firemonkey 控件的 OnMouseMove 方法
我有一个自定义控件,我正在尝试为其定义一个 OnMouseMoveFunction。本质上,该控件用作搜索栏,由一个编辑框和一个TGrid
用于显示结果的子自定义控件组成。我已经处理了几个鼠标事件TGrid
,但是在尝试实现 OnMouseMove 时,当我尝试设置TGrid
OnMouseMove 方法时出现以下错误:
E2034 Cannot convert 'void (_fastcall * (_closure )(TMouseMoveEvent))(TMouseMoveEvent)' to 'TMouseMoveEvent'
这是定义函数的头文件的一部分:
void __fastcall GridMouseMove( TMouseMoveEvent * MouseEvent );
这是控件的 CPP 文件中的实际函数:
到目前为止,一切都会编译得很好。但是,当我将TGrid
OnMouseMoveEvent 处理程序分配给我分配的方法时,我收到错误消息。
我错过了什么导致它无法构建?
c++ - 在代码中突出显示 TGrid 行
我有一个自定义控件TGrid
,我正在尝试制作它,因此当鼠标悬停在一行上时,该行会突出显示。如果我使用箭头键导航网格,行会自动突出显示。但是,我不确定如何复制此效果以使用鼠标进行导航。
目前,我有一个 MouseMove 函数,它可以检测鼠标悬停在网格的哪一行。
我最初认为使用该SelectRow
功能会达到预期的效果,但是使用该方法时没有任何反应。另外我尝试过使用
FGrid->SelectCell(0, rowSelected);
这也不起作用。
我已经验证我从函数中获得了正确的行,当鼠标悬停在它上面时,将一行的文本设置为粗体
FGrid->RowObjects[rowSelected]->SetBold();
firemonkey - Firemonkey 样式设计器使 TRectangle 填充父级
我正在尝试将TRectangle
对象添加到样式设计器中的 Firemonkey 控件,以赋予控件背景颜色。我可以TRectangle
手动添加和调整大小,但是如果控件在设计器中更改大小,则样式将不起作用。有没有办法让TRectangle
自动占用它的父控件的大小?
c++ - 在 C++ 中以编程方式设置 Firemonkey 控制字体
我有一个扩展的自定义 Firemonkey 控件,TEdit
它是在表单上动态创建的。我试图在创建它时设置它的字体大小:
但是,控件上的字体保持不变。
我有另一个相同类型的控件,它已经在表单上,我可以通过编程方式更改字体大小。我注意到这个控件,如果Size
在属性中设置为 false,StyledSettings
我可以更改字体,而如果Size
设置为 true,我无法更改字体大小。
所以,当我创建我的自定义控件时,我试图以编程方式将Size
属性设置为 false,但是我不知道该怎么做。
我试过了:
和
两者都不会编译。如何确保在运行时在我的自定义控件上删除此属性?还是有另一种方法我应该设置它的字体?
static-libraries - 如何将 64 位 COFF 转换为 OMF?
我需要将 64 位 .lib 文件COFF
从OMF
. Coff2Omf.exe
与 32 位库一起工作正常,但给...
...在 64 位库上。是否有用于此的更新工具或类似工具?
c++ - 使用 TZipFile 创建一个新的 zip 文件
我正在尝试使用 TZipFile 类来创建一个新的 zip 文件并向其中添加一些文件。我可以使用以下代码将文件添加到现有的 zip 文件中:
但是,我不确定如何在代码中创建一个新的 zip 文件,然后向其中添加文件。我尝试调用zip->Open
一个不存在的文件,认为这可能会创建存档,但这只会导致访问冲突。