2015-07-11 57 views
0

我在學習SharpDX,但在DirectInput中學習MouseManager類和Mouse類時發現問題。 我不知道如何獲得mousePosition,這對我來說很重要,因爲我在遊戲中添加了按鈕。我看到了文檔,但我在這裏找不到任何幫助。SharpDX如何讓鼠標在遊戲屏幕上的位置

回答

0

我假設您使用RenderForm來顯示您的遊戲。如果是這種情況,您可以像使用Windows窗體一樣訂閱鼠標事件:

int x; 
int y; 
// form is RenderForm 
form.MouseMove += (sender, args) => { 
    x = args.X; 
    y = args.Y; 
}; 
+0

我使用遊戲類,因爲遊戲類包含更新和繪製方法 @Jens Nolte – Rasd

+0

我需要知道如何解決這個問題,獲取鼠標位置,因爲我在SharpDX中做了一個簡單的Tile Map Editor,但每一個函數是由於這個鼠標問題與KeyBoard:/ – Rasd

+0

我沒有使用工具包,但這個示例似乎包含您需要的一切:https://github.com/sharpdx/Toolkit/blob/master/Source/VisualStudio/ ToolkitGame /%24safeclassname%24.cs –

0

SharpDX中的鼠標pos位於[0,1]的範圍內。我也有一個瓷磚地圖編輯器。

我需要穩定它,但你可以看看代碼here。 (使用無DX11工具包)

反正

只是乘以X,由寬度/高度Y值。

別擔心,這也讓我失望了。

+0

它是否適用於製作按鈕? – Rasd

+0

@Rasd fraid不是 – RadioSpace

+0

那麼,如果我想爲按鈕設置懸停狀態,我該怎麼辦? – Rasd

相關問題