标题:求助:关于组合框的小问题
只看楼主
桃源书生
Rank: 1
等 级:新手上路
帖 子:99
专家分:3
注 册:2006-7-3
结帖率:33.33%
 问题点数:0 回复次数:6 
求助:关于组合框的小问题
现有如下图所示的两个组合框,想实现以下功能,应该如何编写代码呢?请各位大侠指教。
combo1.additem "水果"
combo1.additem "蔬菜"
当选中combo1中的“水果”时,combo2中会有“苹果”、“梨”等选项供选择;
当选中combo1中的“蔬菜”时,combo2中会有“白菜”、“萝卜”等选项供选择。
搜索更多相关主题的帖子: 萝卜 苹果 如何 蔬菜 水果 
2009-11-09 22:03
msgj
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:190
专家分:914
注 册:2009-10-3
得分:0 
作参考:
Private Sub Form_Load()
Combo1.AddItem "水果"
Combo1.AddItem "蔬菜"
Combo1.ListIndex = 0
End Sub
Private Sub Combo1_Click()
If Combo1.Text = "水果" Then
Combo2.Clear
Combo2.AddItem "苹果"
Combo2.AddItem "梨"
Combo2.ListIndex = 0
End If
If Combo1.Text = "蔬菜" Then
Combo2.Clear
Combo2.AddItem "白菜"
Combo2.AddItem "萝卜"
Combo2.ListIndex = 0
End If
End Sub

2009-11-09 22:48
bczgvip
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:66
帖 子:1310
专家分:5312
注 册:2009-2-26
得分:0 
程序代码:
Private Sub Form_Load()
    Combo1.AddItem "水果"
    Combo1.ItemData(Combo1.NewIndex) = 1
    Combo1.AddItem "蔬菜"
    Combo1.ItemData(Combo1.NewIndex) = 2
    Combo1.ListIndex = 0
End Sub

Private Sub Combo1_Click()
    Combo2.Clear
    Select Case Combo1.ItemData(Combo1.ListIndex)
    Case 1
        Combo2.AddItem "苹果"
        Combo2.AddItem "梨"
        Combo2.ListIndex = 0
    Case 2
        Combo2.AddItem "白菜"
        Combo2.AddItem "萝卜"
        Combo2.ListIndex = 0
    End Select
End Sub

2009-11-09 23:38
桃源书生
Rank: 1
等 级:新手上路
帖 子:99
专家分:3
注 册:2006-7-3
得分:0 
谢谢楼上两位,经验正,均可实现以上功能。谢谢!

另请教一个问题:
如何把Excel表格中的数据导入到组合框中?
如附件Book1.xls中Sheet1中第一列(A列)数据为“苹果”、“梨”;第二列(B列)数据为“白菜”、“萝卜”。若想实现本帖功能,应该如何做?谢谢!
Book1.rar (1.64 KB)


[ 本帖最后由 桃源书生 于 2009-11-10 11:00 编辑 ]
2009-11-10 09:10
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4912
专家分:29900
注 册:2008-10-15
得分:0 
有二种办法:
1\用读取 excel 的方法,读这个文件,可以直接读取指定单元格的内容
如combo1选的第一个,就请第1列数据,一个一个加进去,直到读出来的内容为空白为止.
如何读取EXCEL文件,请查找一下论坛.


2\用读数据库的方法来读这个excel ,一行就是一样记录.列是字段,也照样读取空白为止.(这个我没用过,只知道有)



授人于鱼,不如授人于渔
早已停用QQ了
2009-11-10 14:06
桃源书生
Rank: 1
等 级:新手上路
帖 子:99
专家分:3
注 册:2006-7-3
得分:0 
以下是引用风吹过b在2009-11-10 14:06:10的发言:

有二种办法:
1\用读取 excel 的方法,读这个文件,可以直接读取指定单元格的内容
如combo1选的第一个,就请第1列数据,一个一个加进去,直到读出来的内容为空白为止.
如何读取EXCEL文件,请查找一下论坛.
读取excel查到了,但是不清楚如何把excel中的数据写入combo中,请指点。
附读取excel代码:
Dim xlsApp As Excel.Application
    Dim xlsworkbook As Excel.Workbook
    Dim xlssheet1 As Excel.Worksheet
    Dim xlssheet2 As Excel.Worksheet
    Set xlsApp = CreateObject("Excel.Application")
    Set xlsworkbook = xlsApp.Workbooks.Open("C:\a.xls")
    xlsApp.Visible = False
    Set xlssheet1 = xlsworkbook.Worksheets.Item(1)
    Dim h As Integer
    Dim l As Integer
    h = xlssheet1.UsedRange.Rows.Count
    l = xlssheet1.UsedRange.Columns.Count
2009-11-12 13:35
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4912
专家分:29900
注 册:2008-10-15
得分:0 

do
  在 execl 中读一个数据
  if 读的结果<>"" then
      combo.additem 刚读的这个数据
  else
      exit do
  end if
loop


授人于鱼,不如授人于渔
早已停用QQ了
2009-11-12 18:52



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-291710-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.285532 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved