10得票2回答
应用程序实例(TApplication)在何时何地被创建?

Application实例和Screen实例是在何时何地创建的?(同样适用于Screen实例)。 我在Forms或System的initialization部分中没有看到任何内容。 在Application.Initialize之前的CPU窗口中,我看到了对@_InitExe(SysInit...

7得票2回答
如何在编辑框中接收到TAB键的按下?

当用户按下 Tab 键时,我希望能够接收到 OnKeyPress 事件。 procedure TForm1.Edit1(Sender: TObject; var Key: Char); begin case Key of #09: begin //S...

41得票4回答
Delphi: 理解构造函数

我想要了解以下关键词在对象构造函数中的应用:虚拟覆盖重载重新引入每次我都是随机添加关键词,直到编译器不报错。作为一名使用Delphi开发12年的开发者,我更想知道自己在做什么,而不是随意尝试。给定一组假设的对象: TComputer = class(TObject) public c...

8得票1回答
在TListView表头列中的复选框 - 如何防止它夺取焦点?

这与问题“如何在TListView标题列中显示复选框?”有关。 我想使用@Sertac Akyuz的这个答案中的代码。(我需要在WinXP中运行) 但是我希望使标题CheckBox不会从ListView或其他活动控件窃取焦点。 一种快速解决方法是在ListHeaderWndProc中始终...

9得票4回答
如何在Delphi中验证文本框只包含数字?

这可能是一个非常简单的问题,但我从未接触过Delphi。 我有一个编辑框,可以输入字符。但在某些特殊情况下,我必须验证编辑框中的字符是否仅为数字。 我们该怎么做呢? 注意:用户可以输入任何字符,但在验证时,我必须验证上述条件。

12得票2回答
Delphi:如何将接口实现委托给子对象?

我有一个对象,它将特别复杂的接口实现委托给一个子对象。我认为这正是`TAggregatedObject`的工作。这个“子”对象维护着对其“控制器”的弱引用,并将所有的 `QueryInterface` 请求传递回父级。这保持了`IUnknown`始终是相同的对象的规则。 所以,我的父级(即“...

18得票2回答
调用Trunc()时出现无效的浮点运算

当我尝试对一个Real值执行Trunc()操作时,我会收到一个可重复的浮点异常。 例如: Trunc(1470724508.0318); 实际上,实际的代码更加复杂: ns: Real; v: Int64; ns := ((HighPerformanceTickCount*1...

7得票3回答
Delphi静态变量

在我的课程中,我需要使用静态变量(在C++中为static int next_id)。 我使用 private class var next_id: Integer; 我收到错误:PROCEDURE或FUNCTION expected。如何使用Delphi 5声明一些变量?

8得票3回答
Delphi:在运行时查找从给定基类继承的类?

在运行时,有没有一种方法可以找到所有从特定基类继承的类? 例如,假设有一个类: TLocalization = class(TObject) ... public function GetLanguageName: string; end; 或者假装有一个类: TTestCas...

7得票4回答
Delphi:reintroduce 关键字何时会隐藏祖先类,何时会显示它们?

今天 最近在Stackoverflow上我学到了以下内容: reintroduce用于隐藏祖先构造函数 reintroduce用于显示祖先构造函数 我一直试图理解这些内容,所以这里还有一个非常具体的问题,支持我的主要问题涉及构造函数。 更新:替换整个问题: TComputer ...