2016-11-25 27 views
3

我正在嘗試使用System.Forms庫更改窗口圖標。如何更改Window.Forms應用程序圖標

open System 
open System.Drawing 
open System.Windows.Forms 

let window = new Form() 
window.Text <- "Hallo!" 

let icon = new System.Drawing.Icon("icon.png") 
window.Icon <- icon 

Application.Run window 

我的代碼不會返回任何錯誤並編譯成魅力。但!我得到一個未處理的異常,說明參數圖片必須是可以用作圖標的圖片。

那麼對圖片有什麼要求?目前我得到的是一個PNG,尺寸爲512x512。

圖標屬性的官方詳細描述在這裏找到: https://msdn.microsoft.com/en-us/library/system.drawing.icon(v=vs.110).aspx

所以我把它的問題是,試圖匹配請求的大小失敗。但請求的尺寸是多少?

+1

第一段:圖表示:「代表一個Windows圖標,它是一個小的**位圖**,用於表示一個對象。圖標可以被認爲是透明的位圖,雖然它們的大小由系統 – s952163

+2

PNG也是一個位圖圖像,但不適合作爲圖標。只能使用.ico文件格式的文件。尺寸限制也適用,不能大於256x256,您應該包含多種尺寸所以它們很適合標題欄,資源管理器視圖和桌面,除了使用專用的圖標編輯器之外,還可以考慮使用內置於VS. Project> Add New Item> Icon中的圖標編輯器,使用免費圖標永遠不是一個壞主意,好看的圖標不是那麼容易的。 –

回答

4

您正在使用png圖像作爲Windows窗體的圖標。使用.ico文件作爲圖標。從here轉換圖標,本網站將把png轉換爲可用所有尺寸的ico。

+0

非常感謝!這個作品! – Nulle

相關問題