【问题标题】:Combo or drop-down box where user can enter own value as well?用户也可以在其中输入自己的值的组合或下拉框?
【发布时间】:2012-02-21 03:39:14
【问题描述】:

您能否有一个组合框或下拉框,用户可以在其中从给定选项列表中进行选择,或者输入自己的值?

【问题讨论】:

    标签: vb6 combobox drop-down-menu


    【解决方案1】:

    是的,这是标准ComboBox 控件的一个功能。它的精确行为取决于您为控件的Style 属性设置的值。以下是选项的简要介绍:

    • vbComboDropDown 是默认样式。组合框看起来像一个带有下拉箭头的单行文本框。用户可以在文本框中键入任意文本,也可以从下拉列表中选择一个预定义的选项。

    • vbComboSimple 为您提供旧的经典风格组合框。这实际上只是一个融合在列表框顶部的文本框(这就是组合框控件的名称!)。与默认样式一样,用户可以在顶部的文本框中键入任意文本,也可以从下面的列表框中选择一个预定义的选项。

      此样式与默认样式之间唯一真正的区别是所有可用选项始终在屏幕上可见。它占用了更多的屏幕空间,但它使用户更容易准确地看到他们的选择是什么。

    • vbComboDropDownList 将生成一个看起来非常像第一个(默认)样式的组合框,除了用户将能够在文本框中键入任意文本。他们只能选择下拉列表中可用的预定义选项之一。

    作为我尽力描述的补充,您还可以查看Microsoft's documentation for the Win32 Combo Box control,并附有屏幕截图。 VB 6 控件只是标准 Win32 控件的包装,因此您看到的所有内容对于 VB 6 应用程序都是相同的。唯一的区别是样式的名称——而不是设置CBS_* 标志之一,您使用vb* 常量之一。

    在这种情况下,听起来您想要第一个选项,vbComboDropDown

    【讨论】:

    【解决方案2】:

    这通常被简单地称为组合框,但您必须指定您使用的小部件工具包,在 Cocoa 中这是一个 NSCombobox,在 java.swing 中它只是一个 swing.combobox,在 QT 中是一个 Qcombobox。

    【讨论】:

    • 这个问题已经发生了重大变化,因为它最初只是询问您是否可以在下拉菜单中输入值,并且没有指定框架。
    猜你喜欢
    • 1970-01-01
    • 2022-01-17
    • 1970-01-01
    • 1970-01-01
    • 2021-02-05
    • 2011-01-28
    • 2016-06-19
    • 2014-08-13
    • 1970-01-01
    相关资源
    最近更新 更多