2011-05-15 54 views
2

嘿:) 我正在開發基於圖塊的遊戲,並且我想爲所有關卡編輯器信息創建一個單獨的窗口,因爲我不希望它疊加在頂部該遊戲並希望進行實時編輯。 我通過在工作線程中產生一個新的Microsoft.Xna.Framework.Game來創建新窗口,並且它都可以很好地工作。除了鼠標光標位置是相對於這個新窗口,而不是有焦點的。 我花了大約一個小時尋找解決方案,甚至設法讓自定義光標工作,但窗口光標仍處於活動狀態,並在點擊時使其他窗口處於活動狀態:?不理想。 有什麼可以重置鼠標的窗口相對座標嗎? 如果沒有(並且我可能會這樣做),我會在編輯器打開時在遊戲窗口的邊緣創建另一個面板,並在其中添加所有細節,只是單獨的窗口以某種方式縫製清潔器...在XNA中的多個窗口中的鼠標位置

任何想法?非常感謝 克雷格:)

回答

1

這裏有一些想法。您可以跟蹤自己的窗口之間的距離,然後在與需要調整的窗口進行交互時將該距離添加到鼠標位置。

另一個想法是創建2個不同的程序,並讓編輯器將當前信息保存到文件或其他東西,然後通知其他人有新的佈局。糾正我,如果我想像這個錯誤。這聽起來像是你在一個窗口中運行了遊戲,而在另一個窗口中運行了關卡編輯器。

+0

好主意,那些應該工作。我基本上需要在單獨的窗口中使用資產瀏覽器,在那裏我可以更改屬性並選擇項目,然後將它們放置在遊戲中,然後繼續玩遊戲。我想我可能不得不將它整合到一個窗口中,併爲這些信息創建一個單獨的視口。我設法得到一個假指針工作使用拇指棒作爲一個快速解決。我剛纔所做的一切都是拋棄:) – Craigw1701 2011-05-15 20:44:28

+0

新窗口是否也是XNA窗口?這種應用程序使用WPF或WinForms和他們自己的內置控件不是更容易嗎? – 2011-05-16 12:01:09