在Windows95中打开“我的电脑”,可以看到窗口中每一项目的面前都有一个小图标,这些图标代表着项目的类型,如果是文件夹,就显示“文件夹”图标,如果是文本文件,就显示“记事本” 图标。在资源管理器中,也是如此。这种带图标的显示方式,非常直观,笔者经过摸索,在VFP50(Visual FoxPro 50)中也实现了这样的功能。具体实现如下: 1新建一表单,往其中添加一个列表框和一个命令按钮。 2列表框和命令按钮的属性设置如下:
控件名 属性 值 list1 ColumnCount 1 ColumWidths 60 IntegralHeight .T. FontSize 10 RowSourceType 0(或1,不能为其他值) RowSource 空 command1 Caption 演示
3命令按钮的Click事件代码如下: &&往列表框中添加项目 ThisFormList1.List(1)=′MAIN.SCX′ ThisFormList1.List(2)=′FORM1.SCX′ ThisFormList1.List(3)=′DEMO1.DBF′ ThisFormList1.List(4)=′SALES.DBF′ ThisFormList1.List(5)=′TESTDATA.DBC′ ThisFormList1.List(6)=′MAIN.PRG′ ThisFormList1.List(7)=′MYFUNC.PRG′ ThisFormList1.List(8)=′SALES.FRX′ ThisFormList1.List(9)=′SS.FRX′ ThisFormList1.List(10)=′SALES.QPR′ N=ThisFormList1.ListCount FOR i=1 TO N &&从后缀名判断类型 cExtension=UPPER(RIGHT(ThisForm.List1.List(I),3)) &&bmp文件在当前目录下 DO CASE CASE cExtension=″DBF″ ThisForm.List1.Picture(I)=″table.bmp″ CASE cExtension=″PRG″ ThisForm.List1.Picture(I)=″apps.bmp″ CASE cExtension=″SCX″ ThisForm.List1.Picture(I)=″forms.bmp″ CASE cExtension=″DBC″ ThisForm.List1.Picture(I)=″database.bmp″ CASE cExtension=″FRX″ ThisForm.List1.Picture(I)=″report.bmp″ CASE cExtension=″QPR″ ThisForm.List1.Picture(I)=″query.bmp″ OTHERWISE ThisForm.List1.Picture(I)=″fox.bmp″ ENDCASE ENDFOR 执行的结果是在每一项目前都有与项目类型对应的图标。将列表框换成组合框(ComboBox)也能达到同样效果。
|