专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > VFP

请问combo显示有关问题

发布时间:2010-05-24 21:52:35 文章来源:www.iduyao.cn 采编人员:星星草
请教combo显示问题
VFP6.0

一个combo控件,RowSource绑定到本地表的一个字段上,RowSourceType=6。

按下某个按钮后,我程序设定combo.value= '123 '并且combo.displayvalue= '123 '

为什么这个combo显示的还是空白?

------解决方案--------------------
thisform.combo1.RowSource=null
thisform.combo1.RowSourceType= 1
thisform.combo1.RowSource= '123 '
------解决方案--------------------
我只知道,RowSourceType=6时,combo.displayvalue=某个字段名,它就会显示相应字段里的内容。
如果你要让combo.displayvalue= '123 ',应该把thisform.combo1.RowSourceType= 1

ROWSOURCETYPE 属性请参阅
rowsource 属性
适用于: ComboBox | ListBox[该主题是 beta 版的一部分并将在今后的版本中修改. 空的主题包含了一个占位符.]
发送该主题的返馈到微软
指定控件中值的来源类型。设计和运行时可用。
Control.RowSourceType[ = nSource]
属性值
nSource
ROWSOURCETYPE 属性的设置有: 设置说明
0(默认值)无。如果使用了默认值,则在运行时使用 AddItem 或 AddListItem 方法填充列。
1值。使用由逗号分隔的列填充。
2别名。使用 ColumnCount 属性在表中选择字段。
3SQL 语句。SQL SELECT 命令创建一个临时表或一个表。
4查询( .QPR)。指定有 .QPR 扩展名的文件名。
5数组。设置列属性可以显示多维数组的多个列
6字段。用逗号分隔的字段列表。字段前可以加上由表别名和句点组成的前缀。
7文件。用当前目录填充列。这时 RowSource 属性中指定的是文件梗概(诸如 *.DBF 或*.TXT) 或掩码。
8结构。由 RowSource 指定的表的字段填充列。
注意,当 RowSourceType 设置为 8 时,如果 RowSource 属性为空,则将当前选中的表用作组合框或列表框控件的源。否则,RowSource 属性指定了用作组合框或列表框控件的源表的别名。
9弹出式菜单。包含此设置是为了提供向后兼容性。

有关使用每个 RowSourceType 设置的详细内容,请参阅 应用列表框和下拉列表框。
示例
下面的示例创建了一个列表框。列表框的项源是数组,数组的名称由 rowsource 属性指定。ROWSOURCETYPE 属性的设置是 5 (数组)。它指定列表框的项源是数组。
列表框的 multiselect 属性设置为“真”(.t.),即允许从列表框中做多项选择。使用 listcount、selected 和 list 属性将列表框中所做的选择显示出来,从而可以确定列表框中项的数目和选择的项。

CLEAR

DIMENSION gaMyListArray(10)
FOR gnCount = 1 to 10 && 用字母填充数组
STORE REPLICATE(CHR(gnCount+64),6) TO gaMyListArray(gnCount)
NEXT

frmMyForm = CREATEOBJECT( 'Form ') && 创建一个表单
frmMyForm.Closable = .f. && 禁止控件菜单

frmMyForm.Move(150,10) && 移动表单

frmMyForm.AddObject( 'cmbCommand1 ', 'cmdMyCmdBtn ') && 添加 "Quit " 命令按钮
frmMyForm.AddObject( 'lstListBox1 ', 'lstMyListBox ') && 添加 ListBox 控件

frmMyForm.lstListBox1.RowSourceType = 5 && 指定一个数组
frmMyForm.lstListBox1.RowSource = 'gaMyListArray ' && 数组包含 listbox 项

frmMyForm.cmbCommand1.Visible =.T. && "Quit " 命令按钮可视
frmMyForm.lstListBox1.Visible =.T. && 列表框可见

frmMyForm.SHOW && 显示表单
READ EVENTS && 启动事件处理

DEFINE CLASS cmdMyCmdBtn AS CommandButton && 创建命令按钮
Caption = ' <Quit ' && 命令按钮标题
Cancel= .T. && 默认取消命令按钮
Left = 125 && 命令按钮列
Top = 210 && 命令按钮行
Height = 25 && 命令按钮高

PROCEDURE Click
CLEAR EVENTS && 停止事件处理, 关闭表单
CLEAR && 清除 Visual FoxPro 主窗口
ENDDEFINE

DEFINE CLASS lstMyListBox AS ListBox && 创建 ListBox 控件
Left = 10 && 列表框列
Top = 10 && 列表框行
MultiSelect = .T. && 允许选择多个项

PROCEDURE Click
ACTIVATE SCREEN
CLEAR
? "选定的项: "
? "--------------- "
FOR nCnt = 1 TO ThisForm.lstListBox1.ListCount
IF ThisForm.lstListBox1.Selected(nCnt) && 项是选定的吗?
? SPACE(5) + ThisForm.lstListBox1.List(nCnt) && 显示项
ENDIF
ENDFOR

ENDDEFINE
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: