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

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 回答
74 浏览

oracle10g - 编辑 ADO 查询时标识符无效

我有一个 ADO 查询,用于收集数据并稍后用于更新该数据。(Embarcadaro C++ Xe2 和 Oracle 10g)。Rownum(别名为 pgnum)也被选中并在此查询中。发布通过此查询编辑的数据时,我收到无效的标识符“pgnum”。这似乎是 ADO 特有的问题,因为相同的代码在我们软件的早期版本中也有效。我们最近将所有查询从 Tquery(旧 BDE 驱动)转换为 ADO。将“pgnum”添加到查询持久字段没有帮助。任何建议将不胜感激。Table1 是一个 ADOQuery。

0 投票
2 回答
121 浏览

c++ - 一个dfm中的多个对话框

我正在开发一个包含许多小型自定义对话框的应用程序。

例如,这些对话框提供选择、显示图形或提供附加界面。大多数情况下,它们需要很少的标记代码并且几乎没有子元素。

目前我正在使用 embarcadero'c XE2 RAD Studio 的 C++ Builder,它与 VCL 一起使用,并为每个表单生成一个 .dfm 文件、一个 .h 文件和一个 .cpp 文件。现在我想对生成和合并的文件进行概述,例如多个小对话框的 .dfm 文件。(甚至可能是 .cpp 和 .h)。但是,我也想使用 C++-Builder 的 VCL 设计器。

有没有办法合并 .dfm 文件并且仍然让 IDE 的设计器像往常一样工作?

还是我应该在运行时动态生成这些对话框?

0 投票
0 回答
137 浏览

c++ - c ++ vcl TListView列标题未在onShow绘制

简介:我想使用 TListView 来显示表格。出于编辑目的,我创建了一个 vcl 的 TListview 的子类,但除了单击单元格之外并没有太大变化。更重要的是,我没有更改 TListView 类的任何绘制事件。

问题:当我打开表格时,表格的标题只被绘制......一半:
在此处输入图像描述

单击标题后,首先最小化窗口或打开不同的对话框,标题再次出现:
在此处输入图像描述

尝试:我尝试调用Update(),Redraw()Invalidate()FormShow,但似乎没有任何改变。我也设置DoubleBuffered=true了ListView。我还尝试设置固定宽度以及自动调整大小(width=-1和 -2)

问题:有没有办法强制特别是列被绘制?我做错了什么,所以他们会有这样的行为?

0 投票
1 回答
173 浏览

c++ - 在运行时创建 TCombobox 的更快方法

我想在运行时用许多具有相同列表的组合框填写表单。它们还获得相同的事件处理程序,该处理程序根据Sender对象的名称进行操作。但是,这需要很长时间,我猜我做错了什么。

我正在使用 XE2 Rad Studio C++ Builder 和 VCL GUI。

编辑:这些框包含不同类型的内容,并分布在表单中的几个 tabPages 上。但是,有必要一目了然地显示它选择的至少 80 个。在单击 TLabel 以选择不同的元素时,用 TLabels 替换它们并创建一个 TCombobox 会更好吗?

代码看起来与此类似:

在我的机器上进行一次迭代似乎需要大约 20 毫秒(用 测试过std::clock),这使得这部分大约需要 10 秒。指针在表单销毁时被删除。我只是把他们的声明放在这里为了简化。

有没有更好的方法来创建多个组合框?也许克隆它们?

0 投票
0 回答
64 浏览

c++ - 缓慢的 Paint() 性能

我想显示一个自定义项目,基本上是一个具有可变列号和宽度的彩色表格。为此,我正在使用 c++ Builder XE2 Rad Studio。

TGraphicControl所以,我创建了一个继承自覆盖的新类void __fastcall Paint(void)

问题:用文本绘制 12 个彩色矩形需要相当长的时间(在 15 到 30 毫秒之间),所以我预计做错了什么。我怀疑ShadowRect做一些可以更好地实施的事情,但我不太确定......

有人在这里看到我的错误吗?

绘制Paint()事件的代码:

0 投票
1 回答
211 浏览

c++ - C++ 方法指针调用产生未定义的符号错误?

我想要一个类,它有一个指向同一类的两个可能方法之一的方法指针。为此,我使用 Embarcadero XE2 bcc32。

当我尝试以下操作时,我收到错误E2451 Undefined symbol findPosition

(obj.*findPosition)(vals,0)不是方法指针调用的正确版本?我应该使用boost:bind吗?或者这通常是一个坏主意,我应该坚持

0 投票
2 回答
975 浏览

c++ - 跟踪打开的子对话框

在 C++ 程序(embarcadero XE2,vcl)中,我想将窗口消息从父窗口发送到所有子窗口。为此,我注册了一个 windowMessage,PostMessage(handle,msg,wparam,lparam)在循环中为所有句柄发送消息,并在每个对话框中使用WndProc(TMessage& Message).

我的问题是跟踪打开的窗口句柄。由于大多数对话框都是通过 打开Show()的,因此可以同时运行多个对话框。

到目前为止,我使用 astd::vector<HWND>来存储 Window-Handles。但是,这需要我一次跟踪哪个句柄仍然有效。我可以通过向onClose对话框添加处理程序并使用对话框的句柄作为参数在主线程中调用一个过程来解决这个问题,因此它可以从向量中删除......

有没有更好的解决方案,比如Application.OpenForms(.NET)中的自我更新列表?或者也许是从主对话框通知子对话框事件的更好方法?

0 投票
1 回答
73 浏览

registry - 如何在 C++Builder 注册表中编辑值?

我使用 C++Builder XE2 并想使用控制台应用程序向导,但它坏了。我已阅读C++Builder XE5 中的 Create Win32 application,看到我需要在注册表中设置以下值:

但我不知道在哪里输入。

0 投票
2 回答
131 浏览

c++ - 为什么会有错误未定义的_getws_s?

我使用 C++ Builder XE2。

我的代码有警告和错误,但我不明白错误:

[BCC32 错误] File5.cpp(44): E2451 未定义符号'getws 改为使用 StringCchGetsW 或 StringCbGetsW'

但是_getws_sstdio.h其中,我将其包括在内,并且它具有_getws_s原型:

问题是什么?

0 投票
1 回答
80 浏览

opencv - openCV最新版本是C++ Builder XE2

我在OpenCV主页中搜索,但无法判断兼容 C++Builder XE2 的版本

所以我有一个问题是什么版本是最新版本并且兼容 C++Builder XE2