问题标签 [delphi-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 投票
2 回答
6266 浏览

delphi - 调试器中奇怪的“无法访问的值”

谁能解释这个屏幕:

在此处输入图像描述

如您所见,我有一个简单的数组-当我使用 A[0]、A 1时,调试器会显示其元素的值……但我无法获取带有局部变量 A[i] 的 元素(但“i”的值显示正确) .

项目设置
调试信息:打开
本地符号:打开
优化:关闭

项目(一个 PAS 文件)已构建,因此 DCU 是新鲜的。您可以在该屏幕上看到该测试项目的几乎完整代码,因此不可能在其他单元等中声明数组 A 或“i”...

现在我检查了 - Delphi XE3中的相同代码完美运行 - 调试器显示所有值。看来XE4在基本功能上有一个严重的bug :-((

0 投票
1 回答
2932 浏览

delphi - Delphi工具栏按钮在单元和表单视图之间切换消失了?

Delphi 中视图工具栏上的两个按钮消失了,我无法找回它们。其中一个按钮是在代码/单元和我一直使用的设计/表单视图之间切换的按钮。用于切换的键盘快捷键 (F12) 仍然有效,但我有一个讨厌的媒体键盘,您必须按功能键才能访问 F 键,所以我真的很想找回那个工具栏按钮。

在此处输入图像描述

我尝试重置所有工具栏及其内容,我看到按钮应该在的空间,但它们不在那里。在工具栏的自定义对话框中,命令似乎不再存在。

在此处输入图像描述

我尝试对 Delphi 进行“修复”重新安装,但即使这样也没有解决它。以前有没有其他人发生过这种情况,或者对如何修复或重置我的 IDE 有想法?

编辑:也许值得一提的是,在代码/单元和设计/表单视图之间切换的菜单选项也不见了。

0 投票
1 回答
706 浏览

delphi - 更新时的Delphi teechart锁定表格

我的应用程序中运行了一个 tdbchart,它每 5 秒更新一次,但是当它更新时它会锁定我的表单,因此我在更新时无法使用它。

有什么方法可以在更新发生时阻止表单锁定?

如果用户不能每 5 秒使用一次表单,那将非常令人沮丧。

提前致谢

0 投票
1 回答
3109 浏览

sql-server - Delphi TSQLDataSet没有带有SQL内部连接查询的输出

我正在使用 TSQLConnection 和 TSQLDataSet 从 Delphi 应用程序中查询 SQL Server (2012) 数据库。到目前为止,我的所有查询都运行良好,但是我现在正在尝试使用 INNER JOIN 编写 SELECT 查询,但我无法访问 TSQLDataSet 的任何输出。

编码:

如果我将此查询输入 SSMS,则会返回正确的信息。在我使用的所有其他 SELECT 查询(没有 INNER JOIN)中,SQL_dataset 按预期返回记录计数和字段名。

关于问题是什么以及如何解决它的任何想法?

更新:

我关于 TSQLDataset.RecordCount 的信息:

http://docwiki.embarcadero.com/Libraries/XE4/en/Data.SqlExpr.TCustomSQLDataSet.RecordCount

从这里我没有得到它不适用于简单查询的印象 - 到目前为止,我已经成功地将它与简单的 SELECT 查询一起用作查询是否返回任何数据的标志......我只是幸运吗?但是,上面的链接确实指出它不适用于参数化查询和多表连接,所以这似乎解释了我原来的问题!非常感谢您为我指明了正确的方向。

此链接表明,如果 Bof 和 Eof 都为真,则结果集为空:

http://docwiki.embarcadero.com/Libraries/XE4/en/Data.DB.TDataSet.Eof

这是一个更好的选择吗?

更新 2:

感谢您的解释,这对我来说开始有意义了。我已经删除了对 RecordCount 的所有引用,并按照建议替换为 TSQLDataset.isEmpty(我完全错过了该方法,谢谢)。

我原以为只要您调用 TSQLDataset.Open 就会填充 TSQLDataset.RecordCount ,但如果我理解正确,情况并非如此?

有时我会滚动浏览结果,如下所示:

这显然确实调用了 TSQLDataset.Next,所以我假设这会完成您所说的所有内存缓冲(根据 RecordCount)。这究竟是在什么时候发生的?

0 投票
0 回答
245 浏览

delphi - 带有桌面 2D 应用程序的 TabControl 焦点

我从 FireMonkey XE4 桌面 2D 开始,但我遇到了TTabControlTab.

如果我TEdit在表单中有 2 个控件,或者TPanel我按下Tab,焦点转到下一个控件,但我将 2 个TEdit控件放在 a 中TTabControl并按下Tab,没有将焦点更改为下一个TEdit

我不明白如何进行此链接,同样使用事件 KeyDown 或 KeyPress 我没有得到肯定的结果。

存在其他的TPageControl还是TTabControl免费的?

或者,如何创建一个新的 Page/TabControlTPanel或构建一个新的?

0 投票
1 回答
1326 浏览

delphi - 为什么 OmniThreadLibrary 的 ForEach 会阻塞主线程?

使用 OmniThreadLibrary 和 Delphi XE4,我希望在后台运行多个线程来处理数据,从而提高我现有代码的速度。

调用以下过程时,应用程序 GUI 将停止处理任何输入,直到所有线程都完成。我的理解是.NoWait即使线程正在运行,使用也应该允许过程退出。

是不是我对 ForEach 循环的理解不正确,提示我应该使用另一种方法来实现后台处理?感谢您对正确使用 OmniThreadLibrary 的任何建议。

0 投票
1 回答
1064 浏览

sqlite - 在 TSQLQuery 中使用 as

我一直在评估 Delphi XE4(针对 win32 编译,但最终平台将是 iOS),我需要创建 SQLite 数据库(没问题)并进行一些查询。这是我想使用的一个查询:

这是我的代码:

问题是查询返回原始字段名称(id、name、note),而不是我使用的(_id、name、description)。

这会带来各种各样的问题。使用

返回

这是不可接受的。

有人有同样的问题吗?

0 投票
2 回答
3209 浏览

ios - iOS 应用程序编译和 MacInCloud/类似

我正在考虑使用 Delphi XE4 和 iOS 开发 iOS 应用程序。在我的研究中,我看到了 MacInCloud,http://www.macincloud.com/features/tools/tools

有没有人有这方面的实际经验?我可以将我的 Windows/Delphi/类似开发工具连接到 MacInCloud/xCode 以进行交叉编译(以遵守许可条款)并在我的 iPhone 上调试应用程序吗?

也许随着时间的推移,购买 iMac 会有所帮助,但如果我可以在没有它的情况下开始创建应用程序,那就太好了。

0 投票
2 回答
1375 浏览

delphi - 使用 LiveBindings 选择 ListBox 后如何访问数据记录

我有一个 TSQLDataset,我使用 livebindings 将它绑定到一个列表框。当我单击列表框项目时,我希望能够从记录中访问其他数据字段,但我无法弄清楚如何做到这一点,因为我无法将数据集获取到相应的项目。
我知道我可以使用 ID 字段并将其分配给Selected.Tag使用实时绑定,但也无法弄清楚,但如果可以的话,我可以有另一个 SQLQuery,然后只返回查询的结果

SELECT * FROM Dataset WHERE ID=(Tag value)

那会起作用,但是当实时绑定填充列表框时,我不知道如何获取实时绑定来设置项目标记值。

有谁知道如何使这项工作?

0 投票
1 回答
4203 浏览

ios - FireMonkey,IOS FMX.Listview

我需要访问 FMX.ListView 控件中 FOOTER、HEADER、ITEMS 的 Text 属性(ShowMessage)。

1,2,3 是标题(ItemText)。

我怎样才能做一个简单的显示消息来显示这些值。