随笔 - 809  文章 - 0 评论 - 144 阅读 - 770万

delphi下拉列表组件(TComboBox) TComboBox 组件组合了一个编辑框与一个可滚动的列表,也称组合框组件,用户可以从列表中选择项目,也可以直接在编辑框内输入内容。

下拉列表组件(TComboBox)
   TComboBox 组件组合了一个编辑框与一个可滚动的列表,也称组合框组件,用户可以从列表中选择项目,也可以直接在编辑框内输入内容。
    组合框可以看作是折叠起来的列表框,与列表框相比,组合框更能节省屏幕上的空间,因为组合框在同一时刻只显示其中的一项,通常是用户选择的一项。除了让用户从下拉列表中选择外,组合框还能让用户直接输入文字。
1.TComboBox 组件的典型用法
    将TComboBox 组件添加到窗体上,然后单击TComboBox 组件的Items 属性后面的“...”按钮打开“String List Editor”编辑框,可以对下拉列表组件的选项进行编辑。在编辑框中每一行内容代表一个选项。
   在编写程序时,主要是利用Text 属性获取TComboBox 组件编辑框中的内容,或者利用ItemIndex属性获取用户选择项的索引。如果在程序运行时需要对下拉列表组件选项的内容进行更改,可以利用Items 属性下的Add 方法增加新的选项,Delete 方法删除选项。
2.TComboBox 组件的重要属性
·CharCase 此属性用于设置编辑框内文字的大小写
·DropDownCount 此属性用于设置当用户下拉组合框时不需要加滚动条就能显示的项的个数
·DroppedDown 如组合框当前被下拉,此属性返回True
·ItemHeight 此属性用于设置项的高度
·ItemIndex 此属性返回组合框中被选择的项的序号
·Items 通过此属性可以访问组合框中所有项
·MaxLength 此属性用于设置用户在组合框中最多可输入的字符数,0 代表不受限制
·SelLength 此属性是用户在编辑框中选择的字符数
·SelStart 此属性是用户在编辑框中选择的起点
·SelText 此属性是用户在编辑框中选择的文本
·Sorted 组合框中的项将按字母顺序排序
·Text 此属性用于设置或返回组合框上显示出来的文本
·Style 此属性用于设置组合框的风格
下面介绍程序中TComboBox 组件常用的属性。
(1)CharCase 属性
此属性用于设置编辑框内文字的大小写,它有3 个取值供用户选择。
• ecLowerCase:此值使TComboBox 组件以小写方式显示所有字母。
• ecNormal:此值使TComboBox 组件按原样显示字母,即大小写混合显示。
• ecUpperCase:此值使TComboBox 组件以大写方式显示所有字母。
(2)DropDownCount 属性
通过属性DropDownCount 可以改变列表框显示条目的个数,默认值为8。当列表框中的条目大于DropDownCount 时,将会在列表框右面自动出现一个滚动条。当列表框中的条目小于DropDownCount时,列表框的高度会自动调整显示所有条目。
(3)ItemHeight 属性
此属性用于设置项的高度,它的取值受Style 属性的影响,只有Style 属性取值为csOwnerDrawFixed或csOwnerDrawVariable 时,ItemHeight 属性才起作用。
(4)ItemIndex 属性(责任编辑:admin)

 

ItemIndex 属性能够返回组合框中被选择的项的序号,当然也可以用此属性更改TComboBox 组件的选中项。在编写代码的时候经常用此属性来获得选择序号。-1 代表没有任何项被选中。
(5)Items 属性
Items 属性可以对组合框中的选项进行访问。此属性下包含多个方法及属性,其中常用的属性和方法如下。
• Add 方法可以向组合框中添加一个选项。
• Append 方法可以向组合框中添加一个选项。
• Clear 方法可以清除组合框中的所有选项。
• Count 属性可以获取组合框中的选项个数。
• Delete 方法可以删除指定序号的选项。
• IndexOf 属性可以获取指定内容的选项。
• Strings 属性可以获取指定序号的选项内容。
• Text 属性可以获取组合框中选项的所有内容。
• ValueFromIndex 属性可以获取指定序号的选项内容。
以上的属性和方法可以用下面的方式引用:
TComboBoxName.Items.方法(或属性)
例如要在ComboBox1 中动态地添加一个选项,可以利用Items.Add 方法:
ComboBox1.Items.Add(’添加一个新的选项’);
而删除ItemIndex 为1 的选项则可以利用Items.Delete 方法:
ComboBox1.Items.Delete(1);
Items 属性中经常用到一个TStringList 类,TStringList 类的属性和方法与Items 的属性完全一样,不过在使用TStringList 类之前必须先用Create 方法建立,然后才能够进行操作。例如可以利用下面的方法对TComboBox 组件进行Items 属性的编辑。
var
S:TStringList;
begin
S:=TStringList.Create;
S.Add(’第1 项’);
S.Add(’第2 项’);
S.Add(’第3 项’);
S.Add(’第4 项’);
S.Add(’第5 项’);
ComboBox1.Items:=S;
end;
(6)SelLength 属性
此属性是用户在编辑框中选择的字符数,它的取值受Style 属性的影响,只有当Style 属性取值为csDropDown 或csSimple 时,SelLength 属性的取值才是正确的。
(7)SelStart 属性
此属性是用户在编辑框中选择的起始位置,它的取值受Style 属性的影响,只有当Style 属性取值为csDropDown 或csSimple 时,SelStart 属性的取值才有可能不为0,而Style 属性的其他取值使SelStart属性的取值为0。
(8)SelText 属性
此属性是用户在编辑框中选择的文本,它的取值受Style 属性的影响,只有当Style 属性取值为csDropDown 或csSimple 时,SelText 属性的取值才有可能不为空,而Style 属性的其他取值使SelStart属性的取值为空。
(9)Sorted 属性
组合框中的项将按字母顺序由小到大进行排序。当TComboBox 组件内的项设计好后,将Sorted属性设置为True,组合框内的项就完成了排序工作,即使再将Sorted 属性设置为False,组合框内的项也是按排序后的顺序显示。
(10)Style 属性
通过Style 属性的设置可以体现出下拉列表组件的5 种类型,取值及功能如下。
• csDropDown 在组合框的编辑框中可以输入,同时下拉式列表框是一组具有相等高度的字符串。
• csDropDownList 在组合框的编辑框中为只读,而且编辑框中的内容只能在从列表框中选择。
• csSimple 在只有一个编辑框中显示,可以在编辑框中输入字符串,也可以通过上、下箭头键改变编辑框中的内容。
• csOwnerDrawFixed 在组合框中由一个只读编辑框和条目高度相等的列表框组成,条目的高度由属性ItemHeight 确定。
• csOwnerDrawVariable 在组合框中由一个只读编辑框和列表框组成,条目的高度可以不同。
3.TComboBox 组件的重要事件
TComboBox 组件最常用的事件是OnChange 事件。当用户从组合框的下拉列表中选择了一项,或者直接在编辑框部分键入了字符,就会触发OnChange 事件。访问Text 属性就可以知道编辑框中的最新内容。当用户下拉组合框的时候触发OnDropDown 事件。OnChange 事件和OnDropDown 事件是最常用的。
4.TComboBox 组件的重要方法
·Clear 此方法用于把整个组合框清空
·SelectAll 此方法用于选中编辑框中的所有文本
下面介绍程序中TComboBox 组件常用的用法。
(1)Clear 方法
此方法是将组合框的内容全部清除。例如要清除ComboBox1 的内容,可以这样写:
ComboBox1.Clear;
(2)SelectAll 方法
此方法用于选中编辑框中的所有文本,此方法受Style 属性的影响,只有Style 属性取值为csDropDown 或csSimple 时,SelectAll 方法才起作用。

posted on   del88  阅读(318)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示