文档库 最新最全的文档下载
当前位置:文档库 › VFP中的列表框控件(listbox)

VFP中的列表框控件(listbox)

VFP中的列表框控件(listbox)
VFP中的列表框控件(listbox)

VFP中的列表框控件(listbox)

一.列表框(listbox):主要用于选择一组指定的数据,用户从列表中选取选项,然后执行所需的操作.

二.列表框常用属性:见下表

注1(rowsourcetype属性可指定的值):

0-无,运行时使用列表框的确良additem和addlistitem方法加入

1-值,将列表框的内容在设计时直接写在该属性中

2-表别名:由columncount确定表中选择的字段.当用户选择列表框时,记录指针将自动移到该记录上

3-sql语句:见sql部分,由执行的结果产生.

4-查询文件名:见查询部分,由查询结果产生

5-数组名

6-字段名表:可用表别名作为字段前缀.当用户选择列表项时,记录指针将自动移到该记录上7-文件名描述框架,可包含"*"和"?"来描述在列表框中显示的文件名

8-结构

9-弹出式菜单,提供向后兼容.

二.列表框常用的方法:见下表

三.列表框常用事件:列表框的常用事件为click(单击)事件和dbclick(双击)事件.

四.例:列表框练习

1.新建表单,添加一个文本框text1,三个命令按钮command1~command3,三个命令按钮的caption属性依次设为"加入","移出"和"全部移出",一个列表框list1.界面如图25

2.设置属性:将表单的caption属性设为"列表框练习",autocenter属性设为.T.;将列表框list1的moverbars属性设为.T.,multiselect属性设为.T.

3.编写代码:

●"加入"命令按钮command1的click事件:

qm=thisform.text1.value

IF !empty(qm)

no=.t.

FOR i=1 to thisform.list1.listcount

IF thisform.list1.list(i)=qm &&如果文本框中输入的内容和列表框中已存在的内容相同,则不添加

no=.f.

ENDIF

NEXT i

IF no

thisform.list1.additem(qm)

thisform.refresh

ENDIF

ENDIF

●"移出"命令按钮command2的click事件:

IF thisform.list1.listindex>0

thisform.list1.removeitem(thisform.list1.listindex)

ENDIF

●"全部移出"按钮command3的click事件:

thisform.list1.clear

●列表框list1的init事件:

thisform.list1.additem("杨过")

thisform.list1.additem("小龙女")

thisform.list1.additem("东方不败")

●列表框list1的dbclick事件:

https://www.wendangku.net/doc/024525690.html,mand2.click() &&调用command2("移出"按钮)的click事件代码

说明:运行后,列表框中自动添加了3条记录,如图26,

这是在表单的init代码中添加的;在文本框中输入任意文本,如果和列表框中的内容不同,单击"加入"按钮,该内容会加入到列表框;否则不添加;在列表框中选中一条数据,单击"移出"按钮,该数据被删除;在列表框中直接双击某条数据,则的列表框的dbclick事件中调用"移出"按钮的click事件代码,将双击的数据删除。

VFP中的列表框控件(listbox)

VFP中的列表框控件(listbox) 一.列表框(listbox):主要用于选择一组指定的数据,用户从列表中选取选项,然后执行所需的操作. 二.列表框常用属性:见下表 注1(rowsourcetype属性可指定的值): 0-无,运行时使用列表框的确良additem和addlistitem方法加入 1-值,将列表框的内容在设计时直接写在该属性中 2-表别名:由columncount确定表中选择的字段.当用户选择列表框时,记录指针将自动移到该记录上 3-sql语句:见sql部分,由执行的结果产生. 4-查询文件名:见查询部分,由查询结果产生 5-数组名 6-字段名表:可用表别名作为字段前缀.当用户选择列表项时,记录指针将自动移到该记录上7-文件名描述框架,可包含"*"和"?"来描述在列表框中显示的文件名 8-结构

9-弹出式菜单,提供向后兼容. 二.列表框常用的方法:见下表 三.列表框常用事件:列表框的常用事件为click(单击)事件和dbclick(双击)事件. 四.例:列表框练习 1.新建表单,添加一个文本框text1,三个命令按钮command1~command3,三个命令按钮的caption属性依次设为"加入","移出"和"全部移出",一个列表框list1.界面如图25 2.设置属性:将表单的caption属性设为"列表框练习",autocenter属性设为.T.;将列表框list1的moverbars属性设为.T.,multiselect属性设为.T. 3.编写代码: ●"加入"命令按钮command1的click事件: qm=thisform.text1.value IF !empty(qm) no=.t. FOR i=1 to thisform.list1.listcount IF thisform.list1.list(i)=qm &&如果文本框中输入的内容和列表框中已存在的内容相同,则不添加 no=.f. ENDIF NEXT i IF no thisform.list1.additem(qm) thisform.refresh

关于WPF的listbox控件绑定问题

关于WPF的listbox控件 首先关于listbox以及datagrid 人们比较喜欢用datagrid来绑定数据,应为它的文本生成出来比listbox要整齐,相对来说listbox生成的文本可以用四个字来形容----不堪入目!下面我用2个控件做出的效果: 发现没?Listbox也能使之对齐。。详解如下: 前台绑定:XAML 其中Name;Gends;Age;Hobby 分别为实例类的属性(也是表的属性); 再看后台很简洁;

vf表单控件的使用说明

一、标签 标签能够显示多个字符构成的文本,用于设计表单上所需的文字性提示信息。标签和大多数控件的不同点在于运行表单时不能用《tab》键来选择标签。 常用的标签属性及其作用如下。 1、Caption:确定标签处显示的文本。 2、Visible:设置标签可见还是隐藏。 3、AutoSize:确定是否根据标签上显示文本的长度,自动调整标签大小。 4、BackStyle:确定标签是否透明。 5、WordWrap:确定标签上显示的文本能否换行。 6、FontSize:确定标签上显示文本所采用的字号。 7、FontName:确定标签上显示文本所采用的字体。 8、ForeColor:确定标签上显示的文本颜色。 二、命令按钮和命令按钮组 在各种窗口或对话框中几乎都要使用一个或多个命令按钮。一旦用户单击一个命令按钮,就可实现某种规定的操作。例如,各种对话框中的“确定”按钮,当用户单击时将结束对话框的操作。 VisualForPro中的命令按钮控件同样用于完成特定的操作。操作的代码通常放在命令按钮的“单击”事件(即Click Event)代码中。这样,运行表单时,当用户单击命令按钮时便会执行Click事件代码。如果在表单运行中,某个命令按钮获得了焦点(这时,这个命令按钮上会比其他命令按钮多一个线框),则当用户按下《Enter》键或空格键时,也会执行这个命令按钮的Click时间代码。 常用的命令按钮属性及其作用如下: 1、Caption:设置在按钮上显示的文本。 2、Default:在表单运行中,当命令按钮以外的某些控件(如文本框)获得焦点时,若 用户按下《Enter》键,将执行Default属性值为.T.的那个命令按钮的click事件代码。 3、Cancel:如果设置该属性值为.T.,则当用户按下键时,将执行命令按钮的click 事件的代码。 4、Enabled:指明按钮是否失效,即是否被选择。当Enabled属性值为.f.时,用户无法 选择该按钮。 5、DisabledPicture:指定按钮失效时在按钮上显示的.bmp文件。 6、DownPicture:指定在按钮按下时按钮上显示的.bmp文件。 7、Visible:指明按钮是否可见。 8、Picture:指明显示在按钮上的.bmp文件。 命令按钮组时一组命令按钮,是容器对象。使用命令按钮组便于对一组命令按钮进行统一操作和设置。命令按钮组的ButtonCount属性值,决定组中命令按钮的个数。 表单运行时,当用户单击组中某个命令按钮时,命令按钮组的Value属性可以返回所单击按钮的序号。若要单独设置组中的某个命令按钮的属性,可以使用命令按钮组的快捷菜单中的“编辑”命令选择某个按钮,在“属性”窗口中设置其属性。若为组中某个按钮的Click事件写了代码,当单击这个按钮时,将执行该按钮的Click事件代码而不是组的Click事件代码。 三、选项按钮组 选项按钮组是常用的一种控件,用在各种对话框中,让用户从给定几个操作中选择一个。例如“文件”菜单中“新建”菜单项打开“新建”对话框,该对话框中有一个标题为“文件类型”的选项按钮组,让用户选择建立哪一种类型的文件。

ListBox控件

ListBox控件 1.功能 ListBox控件显示较长的选项列表,用户可从中选择一项或多项。如果项总数超出可以显示的项数,则自动向ListBox控件添加滚动条。ListBox控件列表中的每个元素称为项。图1所示为ListBox控件。 图1 ListBox控件 2.属性 ListBox控件常用属性及说明如表1所示。 表1 ListBox控件常用属性及说明 下面对比较重要的属性进行详细介绍。 (1)Items属性。该属性用于查看列表框中的项。 语法: public ObjectCollection Items { get; } 属性值:ListBox.ObjectCollection表示ListBox中的项。 说明: ① 该属性使用户可以获取对当前存储在 ListBox 中的项列表的引用。通过此引用,可以在集合中添加项、移除项和获得项的计数。

② 可以使用DataSource属性来操控ListBox的项。如果使用DataSource属性向ListBox 添加项,则可以使用Items属性查看ListBox中的项,但不能使用 ListBox.ObjectCollection的方法向该列表添加项或从中移除项。 (2)SelectedItem属性。该属性表示当前选中的项。 语法: public Object SelectedItem { get; set; } 属性值:表示控件中当前选定内容的对象。 说明:对于标准 ListBox,可以使用此属性确定在ListBox中选定了哪个项。如果 ListBox 的SelectionMode属性设置为SelectionMode.MultiSimple或 SelectionMode.MultiExtended(它指示多重选择ListBox),并在该列表中选定了多个项,则此属性可返回任何选定的项。 示例 把左边的文本框中的内容移到右边的文本框中 本示例主要使用Items属性向ListBox1控件添加项,然后使用SelectedItem属性将ListBox1控件中的选中项添加到ListBox2控件中。示例运行结果如图2和图3所示。 图2 ListBox1中项移动前 图3 ListBox1中项移动后 程序主要代码如下: SqlConnection con = new SqlConnection("server=ZHY\\zhy;uid=sa;pwd=;database=student"); con.Open(); SqlCommand com = new SqlCommand("select * from student",con); SqlDataReader dr = com.ExecuteReader();

VFP常用属性(表单)

计算机等级考试二级VFP常用属性列表 1.ActiveColumn 返回一个整数,表明表格控件中包含活动单元的列编号。应用于表格。 2.Activecontrol 引用对象上的活动控件。应用于容器,表单,页面,_SCREEN,工具栏。3.ActiveForm 引用表单集或_SCREEN对象中活动的表单对象。应用于表单,表单集,_SCREEN。4.ActivePage 返回页框对象中活动页面的页码。应用于页框。 5.Alignment 指定与控件相关的文本的对齐方式。应用于复选框,列,组合框,编辑框,标头,标签,选择按钮,微调,文本框。 6.AlloeAddNew 指定是否可以从一个表格中将新记录添加到表中。应用于表格。 7.AlwaysOnTop 避免其他窗口覆盖表单窗口。应用于表单,_SCREEN。 8.AutoActivate * 指定如何激活OLE容器控件。应用于OLE绑定型控件,OLE容器控件。 9.AutoCenter 指定表单对象第一次显示于Visual FoxPro主窗口时,是否自动居中放置。应用于表单,_SCREEN。 10.*AutoCloseTables 指定由数据环境指定的表或视图是否在表单集、表单或报表释放时关闭。应用于数据环境。11.AutoSize 指定控件是否依据其内容自动调节大小。应用于复选框,命令按钮,命令组,标签,OLE 绑定型控件,OLE容器控件,选项按钮,选项组。 12.BackColor 指定用于显示对象中文本和图形的背景色或前景色。应用于复选框,列,组合框,命令组,容器对象,控件对象,编辑框,表单,表格,标头,标签,选项按钮,选项组,页面,屏幕,形状,微调,文本框,工具栏。 13.ForeColor 同BackColor。应用于复选框,命令按钮,列,组合框,容器对象,控件对象,编辑框,表单,表格,标头,标签,选项按钮,页面,屏幕,微调,文本框,工具栏。14.BorderColor 指定对象的边框颜色。应用于组合框,命令组,容器对象,控件对象,图象,线条,列表框,选项组,页框,形状,文本框。 15.BorderStyle 指定对象的边框样式。应用于命令组,编辑框,表单,图象,标签,线条,选项组,_SCREEN,形状,文本框。 16.BorderWidth 指定一个控件的边框宽度。应用于容器对象,控件对象,线条,页框,形状。 17.Bound

VB中ListBox的应用

https://www.wendangku.net/doc/024525690.html,入门——ListBox控件的使用 【字体大小:小中大】2008-02-18 19:56 来源:作者: ListBox(列表框)控件可以显示一组项目的列表,用户可以根据需要从中选择一个或多个选项。列表框可以为用户提供所有选项的列表。虽然也可设置列表框为多列列表的形式,但在缺省时列表框单列垂直显示所有的选项,如果项目数目超过了列表框可显示的数目,控件上将自动出现滚动条。这时用户可在列表中上、下、左、右滚动。ListBox控件在工具箱中的图标如图所示: 一、ListBox常用属性 1、BackColor 属性:用于显示ListBox控件中的文本和图形的背景颜色,默认为白色(Window) 2、BorderStyle 属性:控制在列表框ListBox周围绘制的边框的类型,其枚举值为下面三个: BorderStyle.None——无边框 BorderStyle.FixedSingle——单行边框 BorderStyle.Fixed3D——三维边框 默认值为BorderStyle.Fixed3D。 3、Font、ForeColor 属性:前者用于调整列表框中文本的字体,后者用于调整文本框中文本或者图形的前景色。 4、MultiColumn 属性:指示列表框中的项是否以水平的方式在列表框中显示,默认为False,此时所有的项都只显示为一列,当列表框无法显示全部的项的时候,将会出现一个垂直的滚动条;如果MultiColumn属性为True,则列表框以多列的形式来显示所有的项,如果一列无法全部显示完,则在水平位置重新显示一列,直到显示完毕为止,此时将会出现一个水平滚动条,如下图一所示:

DropDownList,ListBox控件

5.7 列表控件(DropDownList,ListBox) 在Web开发中,经常会需要使用列表控件,让用户的输入更加简单。例如在用户注册时,用户的所在地是有限的集合,而且用户不喜欢经常键入,这样就可以使用列表控件。同样列表控件还能够简化用户输入并且防止用户输入在实际中不存在的数据,如性别的选择等。 5.7.1 DropDownList列表控件 列表控件能在一个控件中为用户提供多个选项,同时又能够避免用户输入错误的选项。例如,在用121 户注册时,可以选择性别是男,或者女,就可以使用DropDownList列表控件,同时又避免了用户输入其他的信息。因为性别除了男就是女,输入其他的信息说明这个信息是错误或者是无效的。下列语句声明了一个DropDownList列表控件,示例代码如下所示。 1 2 3 4 5 6 7 上述代码创建了一个DropDownList列表控件,并手动增加了列表项。同时DropDownList列表控件也可以绑定数据源控件。DropDownList列表控件最常用的事件是SelectedIndexChanged,当DropDownList列表控件选择项发生变化时,则会触发该事件,示例代码如下所示。 protected void DropDownList1_SelectedIndexChanged1(object sender, EventArgs e) { Label1.Text = "你选择了第" + DropDownList1.Text + "项"; } 上述代码中,当选择的项目发生变化时则会触发该事件,如图5-14所示。当用户再次进行选择时,系统会将更改标签1中的文本,如图5-15所示。 当用户选择相应的项目时,就会触发SelectedIndexChanged事件,开发人员可以通过捕捉相应的用户选中的控件进行编程处理,这里就捕捉了用户选择的数字进行字体大小的更改。 5.7.2 ListBox列表控件

https://www.wendangku.net/doc/024525690.html,入门分组控件:checkedlistbox控件的使用

https://www.wendangku.net/doc/024525690.html,入门——分组控件:CheckedListBox控件的使用https://www.wendangku.net/doc/024525690.html,入门——分组控件:CheckedListBox控件的使用 在https://www.wendangku.net/doc/024525690.html,中,CheckBox、CheckedListBox、RadioButton 和TrackBar这四个控件的功能都是设置和获取值的,我们 称之为设置值的控件。 前面我们了解了CheckBox控件和RadioButton控件的使用,这里我们来看CheckedListBox控件的使用,CheckedListBox控件在工具箱中的图标如图所示: Windows窗体的CheckedListBox控件,扩展了ListBox控件(https://www.wendangku.net/doc/024525690.html,入门——ListBox控件的使用)。它几乎可以完成列表框控件(ListBox)可以完成的所有任务,并且还可以在列表中的项旁边显示复选的标记。这两种控件的其他差异是:CheckedListBox控件(也称复选列表框)只支持DrawMode.Normal,并且复选列表框只能有一项选定或者没有任何选定,选定的项在窗体上突出显示,与以选中的项区别。 一、常用属性和方法 CheckedListBox控件的属性和方法基本上都可以在ListBox

控件中找到,可以参看这里:https://www.wendangku.net/doc/024525690.html,入门——ListBox控件的使用。值得我们重视的是,CheckedListBox控件的CheckedItems属性,它是CheckedListBox控件中复选框选中的项的集合,我们可以通过检索该属性来获得选中的项。CheckOnClick 指示是否只要一选择项即切换复选框。默认行为是在首次单击时更改选定内容,然后让用户再次单击以应用选中标记。但在某些情况下,您可能愿意一单击项就选中它。 下面我们就直接以实例来了解和掌握CheckedListBox控件的方法和属性。 二、在CheckedListBox控件中添加、移除项 因为CheckedListBox控件控件的使用和ListBox控件相似,所以我们这里就只针对用编程的方法来对CheckedListBox 控件的操作。 1、添加项 添加一个名为“新建文件”的项,且复选框为选中状态 CheckedListBox1.Items.Add("新建文件", True) 添加一个名为“拷贝文件”的项,且复选框为未选中状态 CheckedListBox1.Items.Add("拷贝文件", False) 2、删除项

MFC ListBox控件用法介绍

列表控件可以看作是功能增强的ListBox,它提供了四种风格,而且可以同时显示一列的多中属性值。MFC中使用CListCtrl类来封装列表控件的各种操作。通过调用?BOOLCreate(DWORDdwStyle,constRECT&rect,CWnd*pParentWnd,UINTnID);创建一个窗口,dwStyle中可以使用以下一些列表控件的专用风格: ?LVS_ICONLVS_SMALLICONLVS_LISTLVS_REPORT这四种风格决定控件的外观,同时只可以选择其中一种,分别对应:大图标显示,小图标显示,列表显示,详细报表显示 ?LVS_EDITLABELS结点的显示字符可以被编辑,对于报表风格来讲可编辑的只为第一列。 ?LVS_SHOWSELALWAYS在失去焦点时也显示当前选中的结点 ?LVS_SINGLESEL同时只能选中列表中一项 首先你需要设置列表控件所使用的ImageList,如果你使用大图标显示风格,你就需要以如下形式调用:? CImageList*SetImageList(CImageList*pImageList,LVSIL_NORMAL);? 如果使用其它三种风格显示而不想显示图标你可以不进行任何设置,否则需要以如下形式调用:? CImageList*SetImageList(CImageList*pImageList,LVSIL_SMALL); 通过调用intInsertItem(intnItem,LPCTSTRlpszItem);可以在列表控件中nItem指明位置插入一项,lpszItem为显示字符。除LVS_REPORT风格外其他三种风格都只需

CSharp对ListBox重写

WinForms中重写ListBox控件 /* **使用时 simListBox1.ItemCollection.Add(1, "百里屠苏"); simListBox1.ItemCollection.Add(2, "风晴雪"); simListBox1.ItemCollection.Add(3, "方兰生"); simListBox1.ItemCollection.Add(4, "欧阳少恭"); simListBox1.ItemCollection.Add(5, "工长君"); simListBox1.ItemCollection.Add(6, "古剑奇谭"); simListBox1.SelectionMode = SelectionMode.MultiExtended;//默认值是:只能选择一项在按钮的单击事件中: private void button1_Click(object sender, EventArgs e) { for (int i = 0; i < simListBox1.SelectedListBoxItems.Count; i++) { //查看选择的所有项的显示内容 MessageBox.Show(simListBox1.SelectedListBoxItems[i].Key.ToString()); MessageBox.Show(simListBox1.SelectedListBoxItems[i].Item.ToString()); } } */ SimListBox控件源代码如下: using System; using System.Collections.Generic; using https://www.wendangku.net/doc/024525690.html,ponentModel; using System.Drawing; using System.Data; using System.Text; using System.Windows.Forms; namespace DoorControl { ///

/// 专门用于填充ListBox信息方法 /// public partial class SimListBox : ListBox { //AutoScaleMode AutoScaleMode;请在SimListBox.designer.cs中注释掉 //this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; public SimListBox()

VC++中 ListBox(列表框)的使用

VC++ ListBox(列表框)的使用 文档制作:@柳絮飘诗 ListBox的操作比较简单 1添加数据 声明控件变量的类别为Control,变量类型为CListBox,变量名为m_ListBox_Content. m_ListBox_Content.AddString(_T("123")); m_ListBox_Content.AddString(_T("汉字")); m_ListBox_Content.AddString(_T("English")); m_ListBox_Content.AddString(_T("!@#$%^&*()")); 2获取数据 CString s; m_ListBox_Content.GetText(1,s); MessageBox(s,_T("取得第2行数据"),MB_OK); s.ReleaseBuffer(); 将会得到"汉字"这个字符串,如果没有得到"汉字"这个字符串,是因为ListBox的Sort属性设为True了.设为False之后就按照你编写顺序写入(原来是这样 之前都没注意过) 3获取选择的数据 首先要将ListBox的Selection属性设置为Multiple; int nSel; nSel=m_ListBox_Content.GetCurSel(); CString s; m_ListBox_Content.GetText(nSel,s); MessageBox(s,_T("您选择的是"),MB_OK); s.ReleaseBuffer(); 4获取选择ListBox项的多个数据 首先要将ListBox的Selection的属性设置为Multiple int nSel = m_ListBox_Content.GetSelCount(); CArray< int,int& > arrayListSel; arrayListSel.SetSize(nSel); m_ListBox_Content.GetSelItems(nSel,arrayListSel.GetData()); CString s = _T(""); for( int i=0; i< nSel; i++ ) { m_ListBox_Content.GetText( arrayListSel[i], s); MessageBox(s,_T("您选择的是"),MB_OK); } 5双击删除所选项 添加一个ListBox的双击事件 m_ListBox_Content.DeleteString(m_ListBox_Content.GetCurSel()); //例子: CListBox *List; List=(CListBox*)GetDlgItem(IDC_LIST1); List -> AddString("AAA"); List -> SetCurSel(0);

https://www.wendangku.net/doc/024525690.html,中 ListBox列表框控件的使用方法

ListBox 控件允许用户从预定义的列表中选择一个或多个项。它与DropDownList 控件的不同之处在于,它不但可以一次显示多个项,而且(可选)还允许用户选择多个项。 一、属性属性值作用SelectionModeSingle|Multiple列表选择模式:单选|多选SelectedFalse|true是否为选中状态 二、示例 ListBox.aspx 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="ListBox.aspx.cs" Inherits="WebControls_ListBox" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.wendangku.net/doc/024525690.html,/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="https://www.wendangku.net/doc/024525690.html,/1999/xhtml"> <head runat="server">     <title></title>     <style type="text/css">         .style1         {             width: 293px;         }         .style2         {             width: 233px;         }     </style> </head> <body>     <form id="form1" runat="server">     <div>         <h5>1,单选列表框</h5>         省份:<asp:ListBox ID="lstProv"  runat="server">             <asp:ListItem>山东</asp:ListItem>             <asp:ListItem Selected="True">河北</asp:ListItem>             <asp:ListItem>内蒙</asp:ListItem>             <asp:ListItem>安徽</asp:ListItem>         </asp:ListBox>         <br />         <asp:Button ID="btnSubmit" runat="server" Text="提交"

ListBox控件的使用

CListBox是一种很常见的操作控件,用来从列表中选择相应的内容,这个控件以前没有用过,而且在一些书或教程上面讲解的很简单,无法从中看出如何来使用该控件,为了方便以后使用,这里先从MSDN上面的说明开始介绍起,把该控件的有关内容翻译一下,然后做一个程序来综合测试一下相关的功能 CListBox是从CWnd类继承下来的,对该类的总体介绍如下: 一、总体介绍: 一个列表框显示了一系列的项目,比如说文件名等,用户可以查看和选择操作。 在单选列表框中,用户只能选择一个项目,而对于多选列表框,一系列的项目都可以被选择,当用户选择项目后,该项目会被高亮显示,同时列表框将向其父窗口发送一个消息。 你可以用两种方法来创建一个列表框:从对话框个工具栏中拖动或者是直接用代码来创建。但用代码来直接创建时,先构造一个单选框的对象,然后调用Create方法创建一个列表框控件并将它和一个列表框对象关联起来。如果使用对话框工具来生成列表框,那么在对话框类中建立一个列表框的变量,然后使用DoDataExchange函数中的DDX_Control宏来连接该变量和控件(这一点在你用向导创建变量的时候会自动完成) 构造函数可以是一个一步过程,仅仅调用Create方法就可以了 如果你想处理列表框向其父窗口发送的消息(常常是CDialog类),那么你可以添加一个消息循环的入口和一个消息相应函数,格式如下: ON_Notification( id, memberFxn ) 这里id表示的是列表框子窗口的ID,而memberFxn则是父窗口中用来处理这个消息的消息响应函数,其原型如下: afx_msg void memberFxn( ); 下面的表格列举了有哪些消息能够发送给父窗口: 当你使用对话框工具箱来创建一个列表框时,列表框对象会在对话框关闭时自动销毁。 当你在一个窗口(WINDOW)中创建列表框时,你需要自行销毁其对象。如果你是在栈中创建列表框对象,那么它会自动销毁,而如果你在堆中创建列表框对象,比如采用new运算符,那么你必须调用delete方法来销毁该对象 如果你在列表框对象中申请了内存空间,你需要重载列表框的解构函数来释放内存 二、列表框的属性: 从上面的介绍中可以看到,列表框有不同的类型,这些都是通过设置属性来完成的,在VS2008上至少是这么来设置的,下面介绍一下几个关键的属性: 1)Selection属性:该属性用来指定列表框是否允许用户同时选择多个项,前面讲的多选列

VF中表单的常用属性在这里给大家惊情奉献哦

VF中表单的常用属性在这里给大家惊情奉献哦 设计时常用的表单属性,定义表单的外观和行为: 属性说明(默认值) AlwaysOnTop 控制表单是否总是处在其他打开窗口之上。(.F.) AutoCenter 控制表单初始化时是否让表单自动地在Visual FoxPro主窗口中居中。(.F.) BackColor 决定表单窗口的颜色。(255,255,255) BorderStyle 决定表单是否没有边框,还是具有单线边框、双线边框或系统边框。(3) Caption 决定表单标题栏显示的文本。(Form1) Closable 控制用户是否能通过双击“关闭”框来关闭表单。(.T.) DataSession 控制表单或表单集里的表是否能在可全局访问的工作区中打开,或仅能在表单或表单集所属的专有工作区内打开。(1) MaxButton 控制表单是否具有最大化按钮。(.T.) MinButton 控制表单是否具有最小化按钮。(.T.) Movable 控制表单是否能移动到屏幕的新位置。(.T.) ScaleMode 控制对象的尺寸和位置属性的度量单位是foxels还是像素。由“选项”对话框中的设置决定。 Scrollbars 控制表单所具有的滚动条类型。(0) TitleBar 控制标题栏是否显示在表单的顶部。(1) ShowWindow 控制表单是否在屏幕中、悬浮在顶层表单中或作为顶层表单出现。(0) WindowState 控制表单是否最小化、最大化还是正常状态。(0) WindowType 控制表单是否非模式表单(默认)还是模式表单。(0) 属性一览表 Activate Event 当表单集、表单或页对象激活时、或显示工具栏对象时发生。ActiveControl 引用一个对象上的活动控件。 ActiveForm 引用表单集或_SCREEN对象中的活动表单对象。Addobject 在运行时向容器对象中添加一个对象。 AddProperty 向对象添加新属性。 Alignment 控件上正文水平对齐方式。 AlwaysOnBottom 防止其他窗口被表单窗口覆盖。 AlwaysOnTop 防止其他窗口遮挡表单。 Autocenter 指定Form对象在首次显示时,是否自动在VFP主窗口内居中。 AutoSize 控件是否根据正文自动调整大小。 BackColor 指定对象内文本和图形的背景色。 BackStyle 设置背景风格。 BaseClass 指定VFP基类的类名,被引用对象由此基类派生得到。BorderStyle 指定对象的边框样式。

MFC ListBox控件用法介绍

MFC CListCtrl 使用介绍 列表控件可以看作是功能增强的ListBox,它提供了四种风格,而且可以同时显示一列的多中属性值。MFC中使用CListCtrl类来封装列表控件的各种操作。通过调用 BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );创建一个窗口,dwStyle中可以使用以下一些列表控件的专用风格: ?LVS_ICON LVS_SMALLICON LVS_LIST LVS_REPORT 这四种风格决定控件的外观,同时只可以选择其中一种,分别对应:大图标显示,小图标显示,列表显示,详细报表显示 ?LVS_EDITLABELS 结点的显示字符可以被编辑,对于报表风格来讲可编辑的只为第一列。 ?LVS_SHOWSELALWAYS 在失去焦点时也显示当前选中的结点 ?LVS_SINGLESEL 同时只能选中列表中一项 首先你需要设置列表控件所使用的ImageList,如果你使用大图标显示风格,你就需要以如下形式调用: CImageList* SetImageList( CImageList* pImageList, LVSIL_NORMAL); 如果使用其它三种风格显示而不想显示图标你可以不进行任何设置,否则需要以如下形式调用: CImageList* SetImageList( CImageList* pImageList, LVSIL_SMALL); 通过调用int InsertItem( int nItem, LPCTSTR lpszItem );可以在列表控件中nItem指明位置插入一项,lpszItem为显示字符。除LVS_REPORT风格外其他三种风格都只需要直接调用InsertItem就可以了,但如果使用报表风格就必须先设置列表控件中的列信息。 通过调用int InsertColumn( int nCol, LPCTSTR lpszColumnHeading, int nFormat , int nWidth, int nSubItem);可以插入列。iCol为列的位置,从零开始,lpszColumnHeading为显示的列名,nFormat为显示对齐方式,nWidth为显示宽度,nSubItem为分配给该列的列索引。 在有多列的列表控件中就需要为每一项指明其在每一列中的显示字符,通过调用 BOOL SetItemText( int nItem, int nSubItem, LPTSTR lpszText );可以设置每列的显示字符。nItem为设置的项的位置,nSubItem为列位置,lpszText为显示字符。下面的代码演示了如何设置多列并插入数据: m_list.SetImageList(&m_listSmall,LVSIL_SMALL);//设置ImageList m_list.InsertColumn(0,"Col 1",LVCFMT_LEFT,300,0);//设置列 m_list.InsertColumn(1,"Col 2",LVCFMT_LEFT,300,1); m_list.InsertColumn(2,"Col 3",LVCFMT_LEFT,300,2); m_list.InsertItem(0,"Item 1_1");//插入行 m_list.SetItemText(0,1,"Item 1_2");//设置该行的不同列的显示字符 m_list.SetItemText(0,2,"Item 1_3"); 此外CListCtrl还提供了一些函数用于得到/修改控件的状态。 COLORREF GetTextColor( )/BOOL SetTextColor( COLORREF cr );用于得到/设置显示的

ListBox控件使用示例

1.按图所示的界面和下表向窗体上添加控件并设置属性 2.代码如下 using System; using System.Collections.Generic; using https://www.wendangku.net/doc/024525690.html,ponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace lianxiwinform { public partial class Form2 : Form { public Form2() { InitializeComponent(); listBox1.Items.AddRange(new object[] { "武汉", "北京", "广州", "上海", "天津", "重庆", "成都", "深圳" }); } private void button1_Click(object sender, EventArgs e) {

if (listBox1.SelectedIndex >= 0) { listBox2.Items.Add(listBox1.Text); listBox1.Items.RemoveAt(listBox1.SelectedIndex); } int l = listBox1.SelectedItems.Count; for (int i = 0; i < l; i++) { listBox2.Items.Add(listBox1.SelectedItems[0]); listBox1.Items.Remove(listBox1.SelectedItems[0]); } } private void button2_Click(object sender, EventArgs e) { int l = listBox1.Items.Count; for (int i = 0; i < l; i++) { listBox2.Items.Add(listBox1.Items[0]); listBox1.Items.Remove(listBox1.Items[0]); } } private void button3_Click(object sender, EventArgs e) { if (listBox2.SelectedIndex >= 0) { listBox1.Items.Add(listBox2.Text); listBox2.Items.RemoveAt(listBox2.SelectedIndex); } int r = listBox2.SelectedItems.Count; for (int i = 0; i < r; i++) { listBox1.Items.Add(listBox2.SelectedItems[0]); listBox2.Items.Remove(listBox2.SelectedItems[0]); } } private void button4_Click(object sender, EventArgs e) { int r = listBox2.Items.Count; for (int i = 0; i < r; i++) { listBox1.Items.Add(listBox2.Items[0]); listBox2.Items.Remove(listBox2.Items[0]); } }

相关文档