繁体   English   中英

如何在MDI中启动鼠标事件?

[英]How can I initiate mouse events in MDI?

我有MDI应用程序,其中子窗体包含图片框。 我想在激活的(fImage activeChild = this.ActiveMdiChild as fImage;)childbox的picturebox.image中获取像素值。因此,我需要先以childform形式启动鼠标事件,然后以child以及父形式编写函数来访问这些事件事件。

//以子形式,我启动了事件this.pictureBox1.MouseMove + = new System.Windows.Forms.MouseEventHandler(this.pictureBox1_MouseMove);

//我不知道子窗体中的函数应该像什么样(type,get,set)返回在pparentform中发生的鼠标事件。 父形式的函数a(类型,get,set)也可以访问子形式发生的这些事件。 有什么建议吗?

public float pictureBox1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
{
    x = e.X;
    y = e.Y;

    // not clear how to code it           
}

您应该在子窗体中提供一个公共方法,该方法可以执行您想要的操作,而父方法可以调用此方法。 更好,更简单,更干净。 在操纵鼠标事件方面具有任何优势。 但是,如果您坚持这样做,则可以使用interop调用mouse_event。 或通过反射调用自己的私有mousedown处理程序,但这甚至更糟。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM