1。能否在下拉列表框,按下键盘修改其内容的时候用函数或方法不允许用户修改。
2。我是将ComboBox.Style属性设置为2时,系统运行时将不能插入列表数据。
3。我将ComboBox.Style属性设置为0时,系统运行时用户可以自己输入下拉列表框中的内容。我不允许输入,我是在键盘按下事件程序里控制的,有没有其他的办法不允许用户修改

解决方案 »

  1.   

    ComboBox.Style属性设置为2,增加列时用combo.additem就可以了吧
      

  2.   

    我也曾碰到过类似的问题。其实,如果你将 ComboBox 的 Style 属性设置为0,即使你在它的键盘事件中进行了控制,用户还是可以输入数据的。因为当右击 ComboBox ,会弹出一个右键菜单,那里有复制粘贴等等操作。所以即使你不允许用户通过键盘输入任何字符,他还是可以通过鼠标来实现输入。(当然,以上的前提是 Style 属性为0。当 Style 值为2时,就不会弹出右键菜单。)所以,要实现在 ComboBox 的 Style 属性为0的情况下对其输入的绝对控制,你除了要限制键盘,还得屏蔽掉鼠标,也就是禁止它弹出右键菜单。这和禁止文本框的右键菜单差不多。我刚刚才回答了一个这样的问题。好像就在你的这个问题的后面那个。关键是添加一个 Timer。当用户按下了鼠标右键,则设置 ComboBox 不可用,然后在 Timer 中将其还原。道理很简单,你可以去试一试。
      

  3.   

    新建一个工程,加入 combo1(combobox) 和 command1(commandbutton) 这两个控件Private Sub Command1_Click()
        Combo1.AddItem "第三项"
    End SubPrivate Sub Form_Load()
        Combo1.Style=2
        Combo1.AddItem "第一项"
        Combo1.AddItem "第二项"
    End Sub