2013-06-20 68 views
3

我正在开发一个项目在vb 6中。什么问题是,当我加载图标(扩展名为.ico)它会给出“无效图片”。我在所有的论坛上搜索了它,但仍然躺在。任何帮助将不胜感激。无效的图片在Visual Basic 6

Image1.picture = loadpicture(app.path & "\Abc.ico") 

但是,当变化从ICO格式的文件为JPG

image1.picture = loadpicture(app.path & "\Abc.jpg") 

它加载到image1的。

+3

如果您没有向我们展示您如何加载图标,我们无法帮助您确定发生了什么问题。请[编辑]你的问题,并提供更多信息,并具体如果你想在这里得到帮助。谢谢。 –

+0

Image1.picture = loadpicture(app.path&“\ Abc.ico”) –

+1

请编辑您的问题以提供具体信息。发表评论意味着人们在阅读您的问题时无法看到它。谢谢。 Abc.ico是一个有效的Windows图标吗?不是PNG,而是旧式Windows图标 - VB6是*旧*,并且不支持alpha混合或高颜色图标;它预计旧的格式,像Windows 95那样的沉闷图标。 –

回答

1

您必须使用实际上将其保存为.ICO的生成器来创建图标文件。你不能尝试采取JPG或PNG,并重新将其保存为一个.ico文件。

+0

尝试此链接:http://www.google.com/url?sa=t&rct=j&q=create%20vb6%20icon&source=web&cd=1&cad=rja&ved=0CCsQtwIwAA&url=http%3A%2F%2Fwww.youtube.com%2Fwatch %3Fv%3D64udz7aNvX4&ei = GFDDUbumDafGywH65oCABg&usg = AFQjCNGQn5x6UukSxOPbE22_QXwuGWrfdQ&bvm = bv.48175248,d.aWc – logixologist

+0

我亲爱的我并没有将jpg,bmp,png或其他文件更改为ico。 –

+0

我刚刚从网上下载了.ico文件,并希望将其放入我的设计界面。但它给了错误。 –

1

在VB6图标(* .ICO)只能用于设置为适用的图标。您可以使用* .ico文件作为应用程序的主窗口。但是image1.picture不能用loadpicture方法加载一个图标。

+0

图标如何作为图片加载?有没有什么方法? – Felix

0

加载几乎任何格式图片的最佳方式我建议您使用FreeImage(http://freeimage.sourceforge.net/)。

您需要将FreeImage.dll复制到Windows \ System32文件夹,然后将它们的bas模块包含到您的VB6项目中。一旦你这样做,你可以加载一个图标简单到你的形象:

Image1.Picture = LoadPictureEx(App.Path & "\Abc.ico") 
3

您的图标可能是一个32位icon-它只是需要改变,以24位为它在VB6的支持。您可以使用像IcoFX这样的程序来更改位深度。

+0

在Windows 8.1上运行VB6时出现此错误,其中图标文件具有两种格式,32位32位32位,4位,16位16位,4位。在24位添加一个32x32解决了这个问题,所以Windows 8.1必须具有最小的位深度(这比Windows 7要求的要大)。 – Martin

+0

是@VictorMcManus答案是正确的,VB6也不支持256x256的大小。 – Emily