tframe相关内容
多年来我一直在 Delphi 中使用框架,它们是 VCL 最强大的功能之一,但标准使用它们似乎存在一些风险,例如: 很容易意外移动或编辑框架主窗体上的框架子组件,而不会意识到您正在对框架进行“调整" - 我知道这不会影响原始框架代码,但通常不会你想要什么. 在使用框架时,您仍会看到其子组件以进行可视化编辑,即使该框架已使用多年且不应触摸. 所以我开始思考...... 有没有
..
我一直在使用 TFrame 和 ModelMaker 开发许多组件——我发现视觉设计/开发 + 继承 + ModelMaker 的组合非常引人注目.然后我注册这些带有注册单元的 TFrame 后代,它们从那里成为成熟的基于调色板的组件.我正在使用 Delphi 2007. 在我了解这个过程的小“障碍"的早期,我发现 TFrame 后代流错误(通常在 IDE 中显示为表单,而不是帧)可能会遇到
..
我已经在 Delphi 中使用框架多年,它们是 VCL 最强大的功能之一,但标准使用它们似乎有一些风险,例如: 很容易在框架的宿主窗体上意外移动或编辑框架子组件而没有意识到您正在“调整"框架 - 我知道这不会影响原始框架代码,但通常不会你想要什么. 在使用框架时,您仍然会接触到其子组件以进行可视化编辑,即使该框架已使用多年且不应被触碰. 所以我开始思考...... 有没有办
..
我经常像这样将一个 TForm 后代嵌入到另一个 TForm 后代中: varForm1:TForm1;Form2:TForm2;开始Form2.Parent := Form1;Form2.BorderStyle := bsNone;Form2.Align := alClient;Form2.Show;结尾; 通常这可以正常工作,但有时 Form2 中的控件未正确对齐.此类问题有通用的解决方法
..
我已经将 TFrame 的后代类注册为组件,并且我注意到 Loaded 过程执行了两次: 运行时: TMyFrame = class(TFrame)私人的受保护的过程Loaded();覆盖上市构造函数Create(AOwner:TComponent);覆盖结尾;构造函数TMyFrame.Create(AOwner:TComponent);开始ShowMessage('Before TMy
..
发生在我身上的是Delphi XE6 IDE忘记了我过去创建的所有 TFrame 后代。 更具体地说,当我单击“标准”->“框架”时,不再显示用于选择框架的对话框。 ,它显示以下错误消息: 没有可插入的帧。可以从“文件” |“新建” |“其他”选择中创建新框架。 是否可以解决这种情况? 编辑1 可悲的是没有可用的复制步骤:老实说,我不确定这是怎么发生的,但是确实如此。
..
我正在使用C ++ Builder创建VCL表单应用程序.现在我有一个包含许多组件的TFrame,看起来像这样... 我还有一个按钮调用“添加".基本上,每当我按下表单上的“添加"按钮时,都会向其中添加一个新的TFrame,并在前一个TFrame下方添加一个看起来像表格的东西.为了添加重复项,我必须在创建TFrame之前每次都对其重命名. int __fastcall TFor
..
我有一个包含TFrame的表格. TFrame包含动态填充的ComboBox.每个ComboBox条目都有一个关联的对象.到TFrame的重写析构函数被调用时,ComboBox中的项目已被清除,而没有释放其关联的对象.无论是将ComboBox放在设计器视图中的窗体上,还是在代码中以nil或TFrame作为其所有者动态创建它,都会发生这种情况.我目前使用包含TForm的OnDestroy事件来调用包
..
我需要在运行时绘制Canvas框架,就像您使用普通表单一样,但是由于某些原因,他们决定不向框架添加Canvas属性,即使TCustomFrame和TCustomForm都来自同一个父类,处理画布. 我已经通过覆盖PaintWindow过程使它可以画一些东西,但是我似乎仍然无法在运行时使用Canvas属性,就像我遗漏了大部分代码一样. 这是我到目前为止所做的: TCustomFra
..
我使用TFrames.我通过将它们添加到“表单"窗口中来动态制作它们.我选择了称为“发光"的样式(其他样式也是如此).我启动了该程序,该样式仅在主“窗体"窗口上有效,而在控件TFrame上则无效.为什么? 我尝试添加:TStyleManager.SetStyle用于“框架表单",但没有效果. 解决方案 我已修复此错误.如果您将手动更改Frame Form Color属性,则会产生错误
..
如何在Delphi中为TFrame模拟OnDestroy事件? 我认真地在框架中添加了constructor和destructor,以为TForm会这样做: TframeEditCustomer = class(TFrame) ... public constructor Create(AOwner: TComponent); override; destructor De
..
我正在尝试在delphi包(bpl)中加载一个tframe,以显示在主应用程序中 请给我包装和应用程序的代码. 解决方案 给一个男人一条鱼,他吃了一天,学习一个男人的鱼,他吃了一辈子.所以没有适合您的代码:) 您应该如何做: 启动Delphi,创建一个新程序包. 将TFrame添加到您的bpl 保存并编译,您现在应该具有.bpl和.dcp. 关闭所有 创建一个新的应用程
..
每当我调整我的TFrame类(添加属性,方法等)时,IDE会感到困惑,并且表现得好像它认为框架是一个表单,包括标题/标题,边框等。然而,显然这个类被宣布为TFrame后代。有关导致此问题的原因,如何预防以及如何解决的任何想法? 我正在使用Delphi 2007专业版。另请注意(如果重要),TFrame后代通常通过设计时包在IDE(即调色板)上注册。 后来:其他“细节”:目前我遇到这个问
..
在我的主应用程序中,我已经创建了三个按钮,我想要动态地调用帧(一次一个),在我的主应用程序中有三个框架分开的三个bpls )当相应的按钮被点击(框架可以显示在任何控件,例如:TPanal) 我已经使用Dll做了这样的事情,但有一些在堆栈溢出社区建议我使用bpl(他们说很容易), 我以前的帖子 解决方案 这里有一篇关于从一个包(bpl文件): http://edn.embarc
..
我主要是一个Delphi爱好者,而不是专业人士,所以我不得不学习如何使用TFrames我自己的方式女巫是: 在它的单位内创建一个TFrame。 添加该单元以主窗体Uses子句为单位。 拥有该TFrame类型的私有变量 该表单的OnCreate将启动TFrame并将其附加到一个TPanel在创建和.Parent 在我的一个操作中设置TFrame.Visible:= True和.Brin
..
另一个TFrame IDE注册组件的问题。感谢所有的帮助,同行程序员。 :) 播放Darrian的TFrame继承建议这里: 细节: 基本上,我有一个基于TFrame的组件,我已经注册到IDE,它的工作非常好。我正在开发一些“姐妹”组件,它们将分享大量现有组件的非视觉功能和属性。然后,将很多事情转移到父类/超类,然后新组件和旧组件都可以继承。 最好的方法是什么以这种方式“重
..
我有一个 TForm (TVehicleEditForm),里面有3个相同的 TFrames (TVehicleUnitFrame)。 这个想法是,框架的每个实例都通过框架内的事件处理程序来处理自己的事件。问题在于$ 事件处理程序不被调用。 我试图分配 eventhandler 通过覆盖Create方法的代码,但是在这种情况下也不会调用处理程序。 但是,如果我分配了 eventh
..
我在表单上有一个框架。当我更改框架(添加/删除按钮,标签)时,表单上不会出现更改,或者控件具有框架中其他位置。如果从表单中删除框架并再次添加 - > Ok。 为什么?我记得在Delphi 2010(现在是Delphi XE)中没有问题。 谢谢。 解决方案 所以你创建了一个框架,然后把一个实例放在另一个窗体上,问题在于,在删除实例之前不会立即显示对原始框架的更改, -算了吧?
..
对于某些框架,我希望滚动内容(或至少处理鼠标事件)。 我尝试过以下操作: 只需为每个框架分配OnMouseWheel事件处理程序 覆盖父窗体的MouseWheel事件: 过程TFmReview.MouseWheelHandler(var Message :TMessage); var Control:TControl; begin 控制:= ControlAtPo
..
在Delphi 2009中,在我的一个项目中,我有一个自定义框架,其中有一些控件,我想用作其他控件的基类。我想将此框架注册为IDE向导以在“新建项目”列表中可用。当我将新添加的项目(我的自定义框架)添加到项目中时,我希望它可以: 显示所有属性和事件I添加到对象检查器中的自定义框架。 从我的自定义框架而不是TFrame导出新创建的框架。 在Object Inspector中显示我的属性
..