做了一个控件,这个控件中鼠标移到某个Label上,出现一个panel,然后鼠标从label上移走或是从这个panel上移走该panel就消失。

这中间遇到了两个问题:

1、这个panel位置的问题。

用 this.FindForm().Controls.Add(panel);加该panel。但是Location的时候有问题了,panel.Location=new Point(Label.Location.X,Label.Lcation.Y);结果这个控件的Label位置是(0,0),加的时候就加到了最外层窗体的(0,0)了。于是查到了绝对坐标。换成:

就可以了。

但是这样还有另一个问题,就是当主窗体还原或者改变大小了,这个panel的位置有不正常了,因此改成:

这样主窗体无论位置是不是0,panel的位置就在label的位置上。

2、计算鼠标是否在panel内。


 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-01-22
  • 2022-12-23
  • 2022-02-12
  • 2022-12-23
  • 2022-02-21
猜你喜欢
  • 2022-12-23
  • 2022-01-17
  • 2021-10-27
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案