社区
C#
帖子详情
焦点求助(急用,高分)
zhuyj441
2003-07-05 09:44:15
我从UserControl继承了一个控件,上面只有两个ScrollBar(VScrollBar,HScroolBar),其他的信息都是绘制出来的。现在我需要从键盘对控件进行操作,但是,在接收键盘时,总是会被ScrollBar接收到焦点,UserControl不能接受到键盘事件。且ScrollBar在接受到焦点后会出现闪烁的情况,很难看。
请问我怎样才能避开ScrollBar,让UserControl(this)响应键盘的事件。
...全文
39
6
打赏
收藏
焦点求助(急用,高分)
我从UserControl继承了一个控件,上面只有两个ScrollBar(VScrollBar,HScroolBar),其他的信息都是绘制出来的。现在我需要从键盘对控件进行操作,但是,在接收键盘时,总是会被ScrollBar接收到焦点,UserControl不能接受到键盘事件。且ScrollBar在接受到焦点后会出现闪烁的情况,很难看。 请问我怎样才能避开ScrollBar,让UserControl(this)响应键盘的事件。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
TheAres
2003-07-06
打赏
举报
回复
HOOK,就是钩子,就是提前截获消息,进行处理。如何做,看这里。
http://www.syncfusion.com/FAQ/WinForms/FAQ_c70c.asp#q618q
我觉得也可以override控件的ProcessDialogKey函数来完成。你试试看。
protected override bool ProcessDialogKey( Keys keyData )
{
if ( keyData == Keys.Down || keyData == Keys.Up)
{
//在这里写你的代码
return true;
}
base.ProcessDialogKey(keyData);
return true;
}
zhuyj441
2003-07-06
打赏
举报
回复
不太明白什么是KEY HOOK,可不可以说的详细些。
那是干什么的,我该怎样才能使用,能实现什么样的功能,有没有参考?
谢谢!
lslsoft
2003-07-06
打赏
举报
回复
最后就是做个KEY HOOK
zhuyj441
2003-07-06
打赏
举报
回复
我希望能模拟ListView的效果,用上下键来选择我的内容,可是键盘的事件总是被ScrollBar先得到,并且那个ScrollBar得到焦点似乎都是不可预测的,ScrollBar在得到焦点后,产生了移动,这样我就不能按我的要求进行界面的绘制,这似乎是个很麻烦的问题。
mari
2003-07-05
打赏
举报
回复
继承的控件默认得不到焦点的
TheAres
2003-07-05
打赏
举报
回复
你在usercontrol的Load事件中,添加如下一句。
this.ActiveControl = null;
如何在不行,可以考虑用Keyboard hook来完成。
C#
110,535
社区成员
642,577
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章