日期:2014-05-19  浏览次数:20832 次

如何让TextBox不获得焦点?
VC#下的一个基本对话框的Windows程序,
上有一个TextBox
.Readonly   =   ture;

1.用鼠标点击后这后,在这个Box中,仍然出现一个闪动的光标
2.右击此TextBox,会出现一个上下文Menu,(复制,粘贴等)。

如何让这个TextBox不获得焦点?
也就是说如何让TextBox屏蔽鼠标消息?


------解决方案--------------------
Enable = false
------解决方案--------------------
TOPSTOP=FALSE
------解决方案--------------------
Tabstop=false
------解决方案--------------------
重写Enter事件,当textbox获得焦点时,将焦点转移!
------解决方案--------------------
Enable = false;
backcolor=white;
------解决方案--------------------
private void textbox1_Enter(object sender, System.EventArgs e)
{
this.txtbox1.Focus();
}
------解决方案--------------------
private void textbox1_Enter(object sender, System.EventArgs e)
{
this.txtbox2.Focus();
}

------解决方案--------------------
新建一个空白的右键菜单,绑定到textbox
------解决方案--------------------
用这个 ActiveControl = null;更好~o~
------解决方案--------------------
看你具体的要求了,可以在TEXT的onfocus事件写些让其他控件获得焦点的JS代码
------解决方案--------------------
这个TextBox不获得外部操作的响应还留着干什么 直接用Lable再加个边框就行了
------解决方案--------------------
楼上说得极是
------解决方案--------------------
用Label把BackColor设成白色 BorderStyle设成FixedSingle即可
------解决方案--------------------
其实ReadOnly=false之后,粘贴是不能用的,而复制为什么要禁止呢?
另外,很不幸,计算器的那个框的确是Label,用Spy++可以看到。

------解决方案--------------------
重写TextBox应该可以实现...

拦截Windows消息...