【问题标题】:How to clear an Image in a Userform?如何清除用户窗体中的图像?
【发布时间】:2018-05-17 02:12:39
【问题描述】:

我有一个使用图像控件的用户窗体。我根据两个标准在此控件中显示图片。

当我想输入两个新条件时,我不知道如何在用户窗体中清除此图像。

【问题讨论】:

    标签: image excel controls userform vba


    【解决方案1】:

    您可以通过Image1.Picture = LoadPicture(vbNullString) 轻松'清除'您的 UserForm Image 控件(例如 Image1)。在下面的示例中,您将在单击命令按钮时在显示定义的图片和显示空控件之间切换。为了控制图像状态(是否为空),您可以通过If Image1.Picture Is Nothing Then检查图像图片属性...

    用户表单模块 (Excel) 中的代码示例

    Option Explicit
    
    Private Sub CommandButton1_Click()
    ' Purpose: Change view between given image and no image
    Dim sImgName As String                     ' picture name string
    sImgName = "C:\Temp\MyPicture.gif""        ' <<< choose your picture name"
    With Me.Image1
      If .Picture Is Nothing Then             ' picture property has been cleared already
         .Picture = LoadPicture(sImgName)
      Else                                    ' a picture is already displayed
         .Picture = LoadPicture(vbNullString) ' clear it now
      End If
    End With
    End Sub
    

    在 MS Access 中使用的提示

    注意 MS Access 中重复 @DrMarbuse 的评论作为后期编辑的不同用法:

    Access 2010中,图片由图片路径直接设置。因此不再使用 LoadPicture()(在 Excel 中是必需的)。 一切都保持不变,就像一个魅力。

    【讨论】:

    • 你的回答解决了我的问题,非常感谢。还有一件事,我看到你解决了多少次某人的问题。这是如何运作的 ?我怎样才能让你知道你解决了我的问题?
    • 在access 2010中,图片直接由图片路径设置。所以LoadPicture() 将不再使用(在 Excel 中是必需的)。一切都保持不变,就像一个魅力。
    • 很高兴看到上面的代码像魅力一样工作,感谢您提供有关 Access 2010 的其他信息(除了需要 LoadPicture() 的 Excel)。 - @DrMarbuse
    猜你喜欢
    • 2019-06-12
    • 2017-04-03
    • 1970-01-01
    • 1970-01-01
    • 2022-11-21
    • 2010-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多