forms - Delphi中如何访问父窗体

标签 forms delphi components parent

我正在编写自己的组件,该组件继承自 TButton。我需要对放置新组件的父窗体进行一些操作。

那么,如何从我自己的组件代码访问父表单?

代码示例(MyComponentCode.pas):

ButtonParent.Canvas.Pen.Color := RGB(255,255,255); // where "ButtonParent" have to be a parent form

帮我解决这个问题。谢谢。

最佳答案

访问组件所在的父 TForm,即使您的组件实际上位于另一个容器控件上(例如 TPanelTFrame >),使用GetParentForm() Vcl.Forms 单元中的函数:

uses
  ..., Forms;

var
  Form: TCustomForm;
begin
  Form := GetParentForm(Self);
  //...
end;

关于forms - Delphi中如何访问父窗体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36654223/

相关文章:

delphi - 如何从 Delphi 中的函数返回对象而不导致访问冲突?

algorithm - 是否有用于环绕式 map 的简单 "point in rect"算法?

swift - 获取 Swift 中日期之间剩余的分钟数

angular - 如何将 npx Bootstrap 日期选择器语言更改为 pt-br?

forms - Symfony 表单组件独立表单类型扩展

python - django 形式的条件逻辑

delphi - DataSnap 服务器方法 - 编码嵌套对象

components - 配置多媒体组件以在网站文件夹中发布

c# - 将窗体嵌入到 Windows 窗体中的选项卡控件上

forms - Symfony2 - 集合类型在我的 View 中显示两次