框架继承和包中的重复文件

2023-11-30

我一直在使用 TFrames 和 ModelMaker 开发许多组件 - 我发现视觉设计/开发 + 继承 + ModelMaker 的组合非常引人注目。然后,我使用注册单元注册这些 TFrame 后代,它们从那里成为成熟的基于调色板的组件。我正在使用Delphi 2007。

在我了解这个过程的小“障碍”的早期,我发现通过引入 TFrame 后代流不正确(通常在 IDE 中显示为表单,而不是框架)而遇到的许多问题可以通过引入来完全消除我自己的“TBaseFrame”类继承自 TFrame,没有任何改变,然后使用它作为基类来开发组件(添加方法、属性等)。如果我向直接从 TFrame 继承的类/框架添加属性和方法等,则 dfm 文件流通常会感到困惑。

所以,总的来说,一旦我解决了这些问题,它就工作得很好。

然而昨天,我遇到了一个新问题:

我将生成的组件安装在包集中,并以有意义的方式分组(即,App 1 的所有“面板”都在一个包中,App 2 的许多“查看器”在另一个包中,等等)。

如果包中不包含 TBaseFrame 类,则继承的 TFrame 后代组件将不会在 IDE 中加载。但是,如果我将 TBaseFrame 添加到包中,当多个包中具有相同的源 PAS 文件时,我会遇到 Delphi 报告的冲突。

I could将我所有基于框架的组件放入一个巨大的包中,但我真的非常不愿意这样做,因为我可以清楚地看到,考虑到我计划的集数的性质,随着时间的推移,它会变得太大/失控关于发展。还有其他方法可以解决这个冲突吗?


更新——有一个技巧可以让它“正常”工作——请务必阅读下面的评论。


您是否尝试过将 TBaseFrame 放入所有其他包“需要”的一个单独的包中?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

框架继承和包中的重复文件 的相关文章

  • 从单个应用程序中的多个线程调用 dll 函数是否安全?

    我正在 Delphi 2009 中编写一个服务器应用程序 它实现了多种类型的身份验证 每种身份验证方法都存储在单独的 dll 中 第一次使用身份验证方法时 会加载适当的 dll 仅当应用程序关闭时 DLL 才会被释放 在服务器线程 连接 之
  • Python从更高级别的包导入模块

    这是我的包层次结构 app init py Empty file server py global vars py handlers init py Empty file url1 init py Empty file app1 py ap
  • 为应用程序启用主题

    我有一个旧的应用程序 在Win XP中的delphi 7中启动 现在我正在使用delphi 2009 win Vista 如果我开始一个新项目 所有按钮都有一个圆形边缘 但在我的旧应用程序中 所有按钮都有 方形 形状的外观 有什么设置我错过
  • R 中的优化函数可以接受目标、梯度和粗麻布吗?

    我有一个想要优化的复杂目标函数 优化问题需要相当长的时间来优化 幸运的是 我确实有可用的函数的梯度和粗麻布 R 中是否有一个优化包可以接受所有这三个输入 optim 类不接受 Hessian 矩阵 我已经扫描了用于优化的 CRAN 任务页面
  • 导入错误:无法导入名称“IntEnum”

    我正在尝试安装upstox 这是一个用于连接市场数据的 Python API 我无法在Python3 5上安装它 我的配置是Python 3 5 3 v3 5 3 1880cb95a742 Jan 16 2017 15 51 26 MSC
  • 获取字符、整数和日期字段的字段 oldValue 和 newValue

    我试图只保留表更改的历史记录 所以我想获取一个字段在更改为oldValue之前的值 然后获取它更改为newValue的值 两个值都应转换为字符串 因此 这是该表的一个示例 PartNumber Description 12345 Test
  • Delphi - 相当于C#的三元运算符? [复制]

    这个问题在这里已经有答案了 可能的重复 Delphi 中是否存在或者将来是否存在条件运算符 https stackoverflow com questions 2108609 is there or is there ever going
  • 在 Delphi XE 中将类作为过程的参数传递

    我需要做的是这样的 procedure A type of form var form TForm begin form type of form Create application form showmodal freeandnil f
  • 设置 Emacs 进行 Erlang 编程

    Emacs 是 Erlang 编程的首选 IDE 有很多好的模式 distel erlware mode 默认的 erlang 模式 但是您对设置 Emacs 进行专业 Erlang 开发有何建议 按照中所述设置 erlang mode自述
  • 如何将 JSON 字符串转换为图像?

    我有一个将图像转换为 JSON 数组的应用程序 并将其保存到 blob 字段中 function getImage String var memorystream TMemoryStream jsonArray TJSONArray beg
  • R CMD 检查警告:在文档对象中使用的函数/方法...但不在代码中

    我正在写一个包 但一个持久的R CMD check警告阻止我完成包裹并将其发布到 CRAN 我用roxygen2对于内联文档 尽管这可能不是错误的根本原因 如果您知道如何删除此警告 我很可能可以找到一种方法来使用roxygen2 如何删除警
  • 防止 Visual Studio Code 或 IDE 泄露 Python 类私有方法

    只是想问一个简单的问题 本质上 我想知道是否可以从 Visual Studio Code 或其他 IDE 提供的建议列表中隐藏 Python 类私有方法 例如 假设我们有一个类 A Creating a class class A Decl
  • 在 Delphi 2007 中将具有透明度的位图保存为 PNG

    我有一个包含透明度信息的 Delphi 位图 32 位 我需要将其转换并保存为 PNG 文件 同时保留透明度 我目前拥有的工具是graphics32 Library GR32 PNG 由Christian Budde 提供 和PNGImag
  • 已安装全局 NPM 包但未找到命令

    我已经全局安装了两个 npm 包 下载 https www npmjs com package download and 谜虚拟盒 https www npmjs com package enigmavirtualbox通过命令行 npm
  • Delphi - 如何获取 USB 可移动硬盘和记忆棒的列表?

    在我的应用程序 Delphi 中 我需要列出所有 USB 存储设备 这些可以是闪存棒or外部存储驱动器 有一个Jvcl成分JvDriveCombo 并且它有DriveType属性 问题是我是否选择DriveType Fixed那么除了外部驱
  • 调试器异常错误和内存超调

    我尝试运行以下代码 但它显示有关内存地址的错误 并显示一条消息 循环后 n 可能未定义 请看一看 var n max integer n integer r R1 f h0 Array of Real const h 0 00889 nip
  • 如何释放 TInterfacedObject 中的 TObject 成员

    我知道接口对象是引用计数的 因此不需要手动释放它 但如果它有一个 TObject 继承成员 我是否应该在析构函数中手动释放该成员 考虑以下代码 program Project2 APPTYPE CONSOLE R res uses Syst
  • Delphi应用程序窗口z顺序和MainFormOnTaskBar属性

    我正在维护一个最初用 Delphi 7 编写并移植到 Delphi XE 的应用程序 使用 Windows 7 我们遇到了一些问题 例如模态窗口出现在主窗口下方 以及最终无法与程序交互 因为用户需要与模态窗体交互 而这是不可能的 因为它位于
  • 对象的引用计数

    在我的代码中 我使用一个小的数据存储类 它是在不同的地方创建的 为了避免内存泄漏并简化事情 我想使用引用计数 所以我这样做了 type TFileInfo class TInterfacedObject IInterface 并删除了我对
  • Delphi中使用FindVCLWindow调用WinHelp32(WinXP Pro SP3 32bit)

    有什么问题吗 procedure TForm1 VCLHelpClick Sender TObject var Ctrl TWinControl begin Ctrl FindVCLWindow Mouse CursorPos if Ctr

随机推荐

  • Ruby gets() 未返回正确的字符串[重复]

    这个问题在这里已经有答案了 在听到 Ruby 的所有优点后 我今天决定尝试一下 Ruby 但到目前为止 它只是给我带来了困难 很久以前 我在学习 Python 时制作了一个 搜索引擎 它只是将数据存储在数组中并检查搜索关键字是否在其中 并且
  • Flask App:函数运行时更新进度条

    我正在 Flask 中构建一个相当简单的 Web 应用程序 它通过网站的 API 执行功能 我的用户使用他们的帐户 URL 和 API 令牌填写表单 当他们提交表单时 我有一个 python 脚本 可以通过 API 从他们的帐户导出 PDF
  • 在数组中的每个元素之间使用 MATLAB linspace

    使用 MATLAB 我想在数组中的每个点之间进行线性插值 Using interpolate将以非线性方式完成 我想做的类似于生成低通滤波器系数 我已经想出了一个解决方案 但我想避免使用for loops a 0 0 1 0 0 Input
  • 身份验证后,flask-login 会随机使会话失效

    我正在使用烧瓶登录https flask login readthedocs io en latest用于会话管理 用户首先登录 login html 应用程序并转到 home html 但是 当用户通过身份验证并单击不同的链接后 它将踢出
  • 如何在字符串数组中搜索字符串

    在其他帖子中寻找答案后 我觉得我必须问这个问题 我在看JavaScript 中如何检查数组是否包含对象 and 查找某个项目是否在 JavaScript 数组中的最佳方法 并且无法让代码在那里工作 我正在将 html 嵌入代码捕获到数组中
  • WPF 控件嵌套属性数据绑定

    我正在尝试使用一些嵌套属性来开发用户控件 这些属性允许使用数据绑定来设置它 例如 我有这样的事情 Top level control public class MyControl Control public string TopLevel
  • Cocoa Touch 中的代表与事件

    我正在编写我的第一个 iPhone 应用程序 并且一直在探索 Cocoa Touch 和 Objective C 中的设计模式 我有客户端 Web 开发背景 因此我正在努力了解代表 具体来说 我不明白为什么需要委托对象而不是事件处理程序 例
  • 将项目重新排列到数组中,彼此之间没有相似的项目

    假设我有一个块的集合 12 个是红色 8 个是蓝色 5 个是黄色 1 个是绿色 我需要创建一个算法 将这些对象输出到单个数组中 没有红色块彼此相邻 没有蓝色块彼此相邻 等等 输出应如下所示 红 蓝 红 蓝 红 蓝 黄 蓝 绿 红 黄等 到目
  • 使用模板化构造函数的非模板化类的实例解释为函数定义?

    以下代码最好地说明了我的问题 include
  • ASP.NET 登录/会员资格 - 如何注销?

    我正在使用
  • 将图像保存到数据库作为 varbinary (silverlight)

    今天我一直在尝试将图像保存到数据库中 但我真的无法弄清楚 我做了下表 Afbeeldingen id int afbeelding1 varbinary max 使用 Linq to SQL 类导入它 为其编写一个 WCF 服务 Opera
  • ant 邮件任务在外部位置使用电子邮件和激活 jar

    我有以下蚂蚁邮件任务
  • 无法加载“Microsoft.Data.ConnectionUI”以供 DataConnectionDialog 使用

    我用 C Net 4 0 创建了一个应用程序 在此应用程序中 我需要显示用于访问数据库的 DataConnectionDialog 我使用这个代码 DataConnectionDialog BDdialog new DataConnecti
  • addJS 函数对 prestashop 中的管理员不起作用

    我正在尝试使用在 prestashop 管理中添加 javascript 文件backOfficeHeader使用模块挂钩但没有发生任何事情 我的代码如下 public function install if parent install
  • WCF + Json = 错误的序列化

    为什么使用这个 WCF 3 5 方法 ServiceContract AspNetCompatibilityRequirements RequirementsMode AspNetCompatibilityRequirementsMode
  • TextBox - TextChanged 事件 Windows C#

    我遇到了一个问题 需要输入 这是描述 我有一个txtPenaltyDays在 Windows 窗体中 C private void txtPenaltyDays TextChanged object sender EventArgs e i
  • 无法解析的日期异常

    我目前正在做一些简单的项目Java我在以下字符串中有日期 String dateString Sun 7 14 03 44 AM 2013 并想将此字符串转换为Date目的 我正在使用以下代码行来执行此操作 我搜索了网站并找到了如何执行此操
  • 纯 CSS 手风琴问题

    我正在玩一个纯 CSS 手风琴http reversl net accordion 我可以让基本功能正常工作 标题 2 和 3 都可以切换 但是如果我向标题 1 添加相同的 UL 我就无法切换标题 1 因为标题 1 的样式不同 所以问题 我
  • 使用委托垂直居中项目的文本 (PySide/Qt/PyQt)

    我有一个自定义代表QTableView允许显示 编辑 html 字符串 使用QTextDocument 下面有一个 SSCCE 不幸的是 当我使用显示文本时paint 它不是垂直居中的 但似乎顶部对齐 例如 如果我将委托应用于第二列 而不是
  • 框架继承和包中的重复文件

    我一直在使用 TFrames 和 ModelMaker 开发许多组件 我发现视觉设计 开发 继承 ModelMaker 的组合非常引人注目 然后 我使用注册单元注册这些 TFrame 后代 它们从那里成为成熟的基于调色板的组件 我正在使用D