Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

text box的on change方法取不到输入的值

12  发表于:2013-04-23 15:06:34  
复制

在text box输入值'A'.代码进入on change方法.这时text box值还没更新.不是'A'.当鼠标移动后.代码进入after update方法.text box值才是刚输入的'A'.

我希望能在text box输入一串值时,能一边输入一边取到当前所输入的所有值

 

Top
殷小宝 发表于:2013-04-23 16:51:05
正常情况下,文本框即输即看,你所的“代码进入on change方法”不知什么意思?请说清楚些。

落尘_小新 发表于:2013-04-24 23:30:34
Private Sub Text0_Change()
Me.Text2 = Me.Text0.Text
End Sub
是这意思不。


wfhwfh 发表于:2013-04-26 10:00:50

我是想做一个查询效果.例如我要查询'ABCD'.我在txtBox中输入A.时子窗体就显示查询 like txtBox.value & ‘%’的值.当输入B时显示查询 like txtBox.value & ‘%’的结果.但发现txtBox.value不会随输入而刷新.

代码如下:Me.ITEMsubform.Form--子窗体

Private Sub ItemID_Change()
Me.ITEMsubform.Form.RecordSource = "SELECT ITEM.IMA_ItemID, ITEM.IMA_ItemName FROM ITEM where ima_itemid like '" & Me.ItemID & "%'"

End Sub

 



cspa 发表于:2013-04-26 10:39:35
在你的代码最后加入一条子窗体数据刷新语句试试。

wfhwfh 发表于:2013-04-27 09:22:40
与子窗体无关.问题是 txtBox.value是null值.取不到输入的值

煮江品茶 发表于:2013-04-27 11:47:17
Textbox控件表示内容的有两个属性,其一是Value,其二是Text。通常情况下这两个值是相同的(不考虑类型问题),但在Change事件中这两个是并不同步,写入到Textbox控件中,无论你是否移开焦点或者刷新,Text都是当前已经存在的内容。而Value则是Change之前的内容,需要在移开焦点或者刷新后才能得到新的内容。所以基于此,可以采用两种方法处理,一是直接用Text属性值(需要注意Text是字符型数据,如果要表示为其他类型数据需要转换);二是在使用Value属性值之前对控件进行一次刷新(这个处理比较麻烦,因为还需要将光标始终保持在输入点上)。

wfhwfh 发表于:2013-04-27 13:18:10
的确如此.非常感谢.

总记录:7篇  页次:1/1 9 1 :