在用户表单标题中使用图像

丹·萨顿

我正在处理一个用户窗体,我试图在用户窗体的标题属性中使用 IE/Chrome 等徽标,以便该徽标显示在窗口框架中,后跟一些文本。

我进行了一些浏览,并在网上找到了以下代码,但在涉及 ExtractIcon 的行上出现子/函数未定义错误。

用户表单代码

Private Sub UserForm_Initialize 

    Dim strIconPath As String
     Dim lngIcon As Long
     Dim lnghWnd As Long

     ' Change to the path and filename of an icon file
     strIconPath = "C:\Users\suttond\Desktop\Picture2.gif"
     ' Get the icon from the source
     lngIcon = ExtractIcon(0, strIconPath, 0)
     ' Get the window handle of the userform
     lnghWnd = FindWindow("ThunderDFrame", UserForm1.Caption)
     'Set the big (32x32) and small (16x16) icons
     SendMessage lnghWnd, WM_SETICON, True, lngIcon
     SendMessage lnghWnd, WM_SETICON, False, lngIcon

End Sub

模块代码

Private Declare Function FindWindow _
     Lib "user32" Alias "FindWindowA" _
    (ByVal lpClassName As String, _
     ByVal lpWindowName As String) As Long

 Private Declare Function ExtractIcon _
     Lib "shell32.dll" Alias "ExtractIconA" _
    (ByVal hInst As Long, _
     ByVal lpszExeFileName As String, _
     ByVal nIconIndex As Long) As Long

 Private Declare Function SendMessage _
     Lib "user32" Alias "SendMessageA" _
    (ByVal hWnd As Long, _
     ByVal wMsg As Long, _
     ByVal wParam As Integer, _
     ByVal lParam As Long) As Long

 Private Const WM_SETICON = &H80

本质上,一个小的 IE Explorer 徽标将显示在标题中已有文本的左侧。

编辑

模块代码函数更新为 public 以允许从初始化代码调用它们。不再出现提取错误,但图像未出现在用户窗体标题中。

有趣的托马斯

正如 Mistella 和 Rory 在您的问题的评论中提到的,函数和常量需要声明为Public. 如果您将它们声明为Private,则它们仅在模块中已知,而在表单中不存在。

第二件事是您需要从 ICO 文件中读取图标,而不是从 gif 文件中读取图标,因此您需要对其进行转换。我将IrfanView用于此类任务,但有大量工具(甚至在线)可用。我做了一个快速测试,它奏效了:

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在用户表单代码中使用各种标签

来自分类Dev

如何使用标题中的图像打印jtable?

来自分类Dev

使用 OpenXML SDK 删除标题中的图像

来自分类Dev

隐藏页面标题中的图像(仅限在线表单)

来自分类Dev

在jqGrid列标题中使用图标?

来自分类Dev

在HTML标题中使用变量

来自分类Dev

在图的标题中使用变量的名称

来自分类Dev

Gnuplot标题-使用sprintf在标题中使用变量

来自分类Dev

在用户控件中使用FarPoint价差

来自分类Dev

在用户定义函数中使用标志

来自分类Dev

我在标题中使用图像作为导航栏品牌,但是图像来自标题,我如何在引导程序中解决此问题?

来自分类Dev

使用html-pdf节点模块在标题中添加图像

来自分类Dev

如何在情节标题中使用箭头?

来自分类Dev

取得& 而不是&在标题中使用PRAW返回

来自分类Dev

Matlab-在表格标题中使用特殊字符

来自分类Dev

在Ignite Grid的列标题中使用输入控件

来自分类Dev

在Matlab标题中使用平方根

来自分类Dev

Matlab-在表格标题中使用特殊字符

来自分类Dev

在数据框中对象的标题中使用斜体

来自分类Dev

Angular-在标题中使用可选参数

来自分类Dev

在标题中使用密码调用 API 的正确方法

来自分类Dev

在用户提交时使用选择框获取图像

来自分类Dev

使用DataTrigger在用户控件中更改图像

来自分类Dev

在用户窗体中定义要在模块中使用的变量

来自分类Dev

在用户的电子邮件中使用[授权]属性

来自分类Dev

在用户空间中使用DMA内存传输

来自分类Dev

在用户控件中使用集合时无效的Resx

来自分类Dev

在用户控件或MVVM中使用后面的代码

来自分类Dev

在用户定义类型(UDT)列表中使用“包含”查询

Related 相关文章

热门标签

归档