2017-05-28 107 views
0

因此,我正在嘗試創建一個遊戲,其中您的鼠標位置控制着子彈的位置。我試圖做這樣的...與表格相關的光標位置

public bool PreFilterMessage(ref Message m) 
{ 
    if(m.Msg == 0x0201) 
    { 
     slope = (Form.MousePosition.X - aCharacter.Location.X)/(Form.MousePosition.Y - aCharacter.Location.Y); 
     aLaser.Location = aCharacter.Location; 
     if (Form.MousePosition.X < aCharacter.Location.X) 
      lasDir = -1; 
     else 
      lasDir = 1; 
     laserLaunched = true; 
     return true; 
    } 

Form.MousePosition發現老鼠的關係到整個屏幕位置。我如何找到與表單相關的位置而不是整個屏幕? 在此先感謝

+0

使用窗體的PointToClient()方法。 –

+0

這將是有道理的,但我如何使用光標? – Beldar4000

回答

0

使用PointToClient這樣的...

Point ClientPos = PointToClient(Form.MousePosition); 
    if (ClientPos.X < aCharacter.Location.X) 
     lasDir = -1; 
    else 
     lasDir = 1;