gpt4 book ai didi

delphi - 为什么在Delphi XE中打开项目时主窗体无法访问DataModule的图像和操作?

转载 作者:行者123 更新时间:2023-12-03 15:47:07 24 4
gpt4 key购买 nike

我的 Delphi XE 应用程序在几天前都很好,但我不知道出了什么问题。我的项目布局:

  • 视觉控件位于主窗体上
  • 这些控件的操作和图像列表位于数据模块上

当我打开项目时,主窗体没有与任何控件关联的任何图像或操作,尽管它们应该有。当我编译时,收到错误消息:“模块‘winMain’链接到在当前项目中找不到的模块‘modGeneral’。您希望删除/重定向到另一个模块的链接吗?”。

解决方法:打开项目后关闭主窗体,然后通过在项目管理器中双击该模块(是的,它存在于当前项目中)在 IDE 中打开该模块,然后重新-打开主窗体:我的所有操作和图像现在都正确显示。

您认为这是一个已知的 Delphi bug 吗?我的项目有问题吗?

最佳答案

检查您的 .dpr 文件。重现问题的一种方法是更改​​其中的使用子句。考虑这个运行良好的示例:

program Project1;

uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {DataModule2: TDataModule};

{$R *.res}

begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TDataModule2, DataModule2);
Application.Run;
end.

对于带有 dfm 的模块,项目管理器中的图标看起来与往常一样:

Project Manager screenshot 1

如果您删除评论,或将其注释掉:

program Project1;

uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas'; // {DataModule2: TDataModule};

{$R *.res}

begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TDataModule2, DataModule2);
Application.Run;
end.

这里,图标已更改:

Project Manager screenshot 2

...您会收到您所描述的错误。您需要关闭并重新打开项目才能使更改生效。

关于delphi - 为什么在Delphi XE中打开项目时主窗体无法访问DataModule的图像和操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7417080/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com