[示例六] 选择列表项并显示所选项(来自puremis.net) 在下面的例子中,所有的图片都放在工作表达式Sheet2中。 使用“视图|工具栏|控件工具箱”在工作表Sheet2中添加8个图像控件,名称依次为Image1至Image8,然后添加合适的图像到这些控件中。在B2至B9单元格区域放置图像名称,C2至C9放置显示在图像控件中的列表项文本。现在,工作表Sheet2如图12所示。 图12:将图片和文本放置在工作表中。 在VBE编辑器中,插入一个新用户窗体,并在其上放置一个ImageCombo控件、一个ImageList控件和一个命令按钮控件。然后,在该用户窗体的代码模块上输入下面的代码: Private Sub UserForm_Initialize() Dim imgLst As New ImageList Dim aObjName As Variant Dim aText As Variant Dim i As Long aObjName = Sheet2.Range("B2:B9").Value aText = Sheet2.Range("C2:C9").Value For i = 1 To 8 imgLst.ListImages.Add _ Key:="img" & i, _ Picture:=Sheet2.OLEObjects(aObjName(i, 1)).Object.Picture '您也可以使用LoadPicture来设置Picture属性 Next Set ImageCombo1.ImageList = imgLst For i = 1 To 7 ImageCombo1.ComboItems.Add _ Index:=i, _ Text:=aText(i, 1), _ Image:="img" & i, _ SelImage:="img8" Next Set imgLst = Nothing End Sub Private Sub CommandButton1_Click() If Not ImageCombo1.SelectedItem Is Nothing Then MsgBox ImageCombo1.SelectedItem.Text End If End Sub 说明:在上面的代码中,首先以Dim imgLst As New ImageList语句声明一个ImageList控件的实例,接下来使用Add方法添加图像到ImageList控件的ListImages集合中且带有唯一的关键字,然后通过Set ImageCombo1.ImageList =imgList语句将ImageCombo控件与ImageList控件相关连,最后使用Add方法添加图像复合框项目并设置选中时的图像参数SelImage。 按F5键运行,结果如图13所示。 图13:运行后的结果
[此贴子已经被作者于2007-4-20 22:25:36编辑过] |