2016-11-25 28 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

相关问题