Delphi 将控件上的mousedown事件传输到其父控件

Delphi 将控件上的mousedown事件传输到其父控件,delphi,Delphi,面板上有一个标签。是否可以将mousedown事件传输到父控件,当标签上有mousedown事件时,它可以触发其父面板的mousedown事件?尝试以下操作: type TMyControl = class(TControl); procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin TMyControl(L

面板上有一个标签。是否可以将mousedown事件传输到父控件,当标签上有mousedown事件时,它可以触发其父面板的mousedown事件?

尝试以下操作:

type
  TMyControl = class(TControl);

procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton; Shift:
    TShiftState; X, Y: Integer);
begin
  TMyControl(Label1.Parent).MouseDown(Button, Shift, X, Y);
end;
TMyControl声明用于访问TControl的protectedvisibility MouseDown方法。

尝试以下操作:

type
  TMyControl = class(TControl);

procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton; Shift:
    TShiftState; X, Y: Integer);
begin
  TMyControl(Label1.Parent).MouseDown(Button, Shift, X, Y);
end;
TMyControl声明用于访问TControl的protectedvisibility MouseDown方法。

尝试以下操作:

type
  TMyControl = class(TControl);

procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton; Shift:
    TShiftState; X, Y: Integer);
begin
  TMyControl(Label1.Parent).MouseDown(Button, Shift, X, Y);
end;
TMyControl声明用于访问TControl的protectedvisibility MouseDown方法。

尝试以下操作:

type
  TMyControl = class(TControl);

procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton; Shift:
    TShiftState; X, Y: Integer);
begin
  TMyControl(Label1.Parent).MouseDown(Button, Shift, X, Y);
end;

TMyControl声明用于访问TControl的protectedvisibility MouseDown方法。

OnMouseActivate表单事件帮助您。
或者,您可以处理有关MOUSEACTIVATE表单事件帮助的消息WM_MOUSEACTIVATE和CM_MOUSEACTIVATE。
或者,您可以处理有关MOUSEACTIVATE表单事件帮助的消息WM_MOUSEACTIVATE和CM_MOUSEACTIVATE。
或者,您可以处理有关MOUSEACTIVATE表单事件帮助的消息WM_MOUSEACTIVATE和CM_MOUSEACTIVATE。

或者您可以处理消息WM_MOUSEACTIVATE和CM_MOUSEACTIVATE,这是可能的。但这需要详细说明才能得到适当的帮助。这个标签是组件的一部分吗(考虑子类化)?你为什么需要这个?看来你不在乎。没关系…@TLama-我认为他的问题是正确的,有些人提供了很好的答案,因为这个问题是可能的。但这需要详细说明才能得到适当的帮助。这个标签是组件的一部分吗(考虑子类化)?你为什么需要这个?看来你不在乎。没关系…@TLama-我认为他的问题是正确的,有些人提供了很好的答案,因为这个问题是可能的。但这需要详细说明才能得到适当的帮助。这个标签是组件的一部分吗(考虑子类化)?你为什么需要这个?看来你不在乎。没关系…@TLama-我认为他的问题是正确的,有些人提供了很好的答案,因为这个问题是可能的。但这需要详细说明才能得到适当的帮助。这个标签是组件的一部分吗(考虑子类化)?你为什么需要这个?看来你不在乎。不要紧…@TLama-我认为他的问题是正确的,有些人对这个问题给出了很好的答案,事实就是这样。不。那不是个好办法。在“帮助”中,您可以阅读到:“当用户用鼠标指针在控件上按下鼠标按钮,并且父窗体未激活时发生。”Delphi 2010在具有两个窗体的简单应用程序中运行。FormActive在onmouse激活之后出现。也许在MDI中它不是工作,无法测试now@Vasek-所以你建议使用其他表格?不!它用于测试表单activeNope。那不是个好办法。在“帮助”中,您可以阅读到:“当用户用鼠标指针在控件上按下鼠标按钮,并且父窗体未激活时发生。”Delphi 2010在具有两个窗体的简单应用程序中运行。FormActive在onmouse激活之后出现。也许在MDI中它不是工作,无法测试now@Vasek-所以你建议使用其他表格?不!它用于测试表单activeNope。那不是个好办法。在“帮助”中,您可以阅读到:“当用户用鼠标指针在控件上按下鼠标按钮,并且父窗体未激活时发生。”Delphi 2010在具有两个窗体的简单应用程序中运行。FormActive在onmouse激活之后出现。也许在MDI中它不是工作,无法测试now@Vasek-所以你建议使用其他表格?不!它用于测试表单activeNope。那不是个好办法。在“帮助”中,您可以阅读到:“当用户用鼠标指针在控件上按下鼠标按钮,并且父窗体未激活时发生。”Delphi 2010在具有两个窗体的简单应用程序中运行。FormActive在onmouse激活之后出现。也许在MDI中它不是工作,无法测试now@Vasek-所以你建议使用其他表格?不!对于测试表单active,不要忘记调整X,Y。它们应该与被调用的控件相关,例如:
TMyControl(Label1.Parent)。MouseDown(按钮,Shift,Label1.Left+X,Label1.Top+Y)别忘了调整X,Y。它们应该与被调用的控件相关,例如:
TMyControl(Label1.Parent)、MouseDown(按钮、Shift、Label1.Left+X、Label1.Top+Y)别忘了调整X,Y。它们应该与被调用的控件相关,例如:
TMyControl(Label1.Parent)、MouseDown(按钮、Shift、Label1.Left+X、Label1.Top+Y)别忘了调整X,Y。它们应该与被调用的控件相关,例如:
TMyControl(Label1.Parent)、MouseDown(按钮、Shift、Label1.Left+X、Label1.Top+Y)