以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]文本框默认提示效果  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=102102)

--  作者:13865161910
--  发布时间:2017/6/13 13:49:00
--  [求助]文本框默认提示效果
一个录入窗口
想设计如下效果:
1、当窗口打开时textbox文本框/combobox下拉文本框,默认显示“灰色”提示语:请输入****
2、当鼠标点击控件显示“I”光标,未输入内容情况下,提示语依然存在
3、当输入内容,即值改变后,提示语消失,并显示出“黑色” 输入字符
请教如何实现?!
[此贴子已经被作者于2017/6/13 13:50:32编辑过]

--  作者:有点色
--  发布时间:2017/6/13 14:10:00
--  

afterload

 

e.Form.controls("combobox1").text = "请输入公司名称查找"
e.Form.controls("combobox1").Forecolor = Color.gray

 

textchanged

 

If e.Sender.Text <> "请输入公司名称查找" Then
    e.Sender.ForeColor = Color.black
End If

 

click

 

If e.Sender.Text = "请输入公司名称查找" Then
    e.Sender.SelectAll
End If

 

leave

 

If e.Sender.Text = "" Then
    e.sender.ForeColor = Color.gray
    e.Sender.Text = "请输入公司名称查找"

End If


--  作者:13865161910
--  发布时间:2017/6/13 14:26:00
--  回复:(有点色)afterload?e.Form.controls...
click 代码能否优化?
就是当点击文本框后,光标聚焦在开始位置(SelectionStart),而提示内容不被选中,当输入内容后,提示内容清空

做了测试,如果用selectall,输入内容的时候,提示语不会没清空,是不是要在textchanged加入清除提示内容的代码?不过感觉又会出现矛盾,如果此时没有输入内容,提示语又被清空了,这效果就矛盾了,是不是只能设置selectall?

[此贴子已经被作者于2017/6/13 14:37:35编辑过]

--  作者:有点色
--  发布时间:2017/6/13 15:31:00
--  
 尽量用2楼的方式去做,全选的话,更贴合实际。
[此贴子已经被作者于2017/6/13 15:31:08编辑过]