2016-09-21 120 views
0

我有Windows應用程序(用Unity創建的兒童遊戲),我想設置自定義光標 - 我只有應用程序的二進制文件,它不是我的代碼。應用程序全屏運行,似乎使用窗口光標,光標太小而不易被兒童看到。如何設置一個非常大的Windows 10鼠標光標?

我想從png中創建一個更大的自定義鼠標光標,並在遊戲中使用它。 (大很多,甚至比Windows輔助遊標)

到目前爲止,我曾嘗試:

  1. 使用窗口10控制面板設置光標爲整個OS是一個160x160像素ICO文件。 Windows然後將圖像縮小到更小的尺寸(64x64?)。

  2. 編寫C#中的Windows窗體應用程序,使用我的PNG的自定義光標使用如下代碼:

    IntPtr ptr = myPng.GetHicon(); 
    myCursor = new Cursor(ptr); 
    this.Cursor = myCursor; 
    

這部分工作:光標是大如我想要的,但只有它更改我的應用程序的光標,而不是操作系統。 (這是這些功能的預期行爲)。

  • user32.dll在我的C#應用​​程序使用SetSystemCursor到系統寬光標設置到一個從我的PNG構建爲在第2這改變了系統範圍的光標,但是回被收縮按照窗口縮小到與ico相同的一個小尺寸。
  • 那麼,我想要做什麼呢?我錯過了什麼方法?!

    +0

    根據團結用來設置光標技術,您可以在運行時創建一個自定義光標( [CreateCursor](https://msdn.microsoft.com/en-us/library/windows/desktop/ms648385.aspx))並將其設置爲與應用程序關聯的窗口類([SetClassLongPtr](https:// msdn .microsoft.com/EN-US /庫/窗/臺式機/ ms633589.aspx))。 – IInspectable

    +0

    您可能需要執行代碼注入(請參閱其他地方在線如何注入代碼到現有的統一遊戲)並執行['Cursor.SetCursor('](https://docs.unity3d.com/ScriptReference/ Cursor.SetCursor.html)使用您的自定義紋理調用 –

    回答

    1

    您將需要使用第三方工具,如MouseChanger,這是免費提供從SourceForge

    +0

    這是一個僅鏈接的答案,除非沒有鏈接,或者是一個將問題轉化爲離題問題的答案(請求第三方庫或工具不在線)主題)。這應該是一個真正的評論(如果有的話)。 – IInspectable

    +0

    約翰,感謝您的建議,我可以在SourceForge上找到最接近的[CursorChanger](https://sourceforge.net/p/cursorchanger/home/ Home /),它看起來會像64px的方塊,但不會更大。如果這不是你想要的,你有鏈接嗎? – Undef