我正在實現一個應用程序,可以在面板中拖放圖像,所以我想確保圖像放置在面板內,並且在放下時可以看到整個圖像。在這種情況下,我想獲得當我做拖放事件時的當前光標位置。那麼我怎樣才能獲得與面板相關的光標位置呢? 以下是面板拖動事件的方法。我們怎樣才能得到相對於窗體的位置?
private void panel1_DragDrop(object sender, DragEventArgs e)
{
Control c = e.Data.GetData(e.Data.GetFormats()[0]) as Control;
if (c != null)
{
if (e.X < 429 && e.X > 0 && e.Y<430 && e.Y>0)
{
c.Location = this.panel1.PointToClient((new Point(e.X, e.Y)));**
this.panel1.Controls.Add(c);
}
}
}
是否需要panel1.TopLevelControl.PointToClient() - 即使用表單? – 2010-02-24 13:59:14
添加了我的意思的例子 – 2010-02-25 14:12:39