• 5869阅读
  • 6回复

[提问]急急急!窗口Tab顺序,如何禁用一些控件 [复制链接]

上一主题 下一主题
离线zyc52351484
 
只看楼主 倒序阅读 楼主  发表于: 2012-04-28
关键词: 禁用按键Tab
如题,因为在窗口里面有许多控件,很多TextEdit喝Lable,如何在设置Tab顺序的时候把这些输入框什么的禁用掉呢,只显示按键的Tab顺序就可以呢,谢谢拉,很急的!!!
离线zyc52351484
只看该作者 1楼 发表于: 2012-04-28
有没有大哥大姐知道阿,救救小弟吧,纠结一上午了
离线zzh12215
只看该作者 2楼 发表于: 2012-04-28
只显示按键的Tab顺序就可以    指的是按钮吧

如果是的话,你可以把按钮的tab顺序 调在最前面就行了。禁用估计不行,除非你不使用那些textedit把他们setenable(false)

使用代码调整tab 顺序可是使用这个静态函数:
void QWidget::setTabOrder ( QWidget * first, QWidget * second ) [static]

Puts the second widget after the first widget in the focus order.

Note that since the tab order of the second widget is changed, you should order a chain like this:

setTabOrder(a, b); // a to b
setTabOrder(b, c); // a to b to c
setTabOrder(c, d); // a to b to c to d
not like this:

// WRONG
setTabOrder(c, d); // c to d
setTabOrder(a, b); // a to b AND c to d
setTabOrder(b, c); // a to b to c, but not c to d
If first or second has a focus proxy, setTabOrder() correctly substitutes the proxy.
离线passion_wu
只看该作者 3楼 发表于: 2012-04-28
设置不需要tab键索引的控件的focusPolicy为NoFocus就可以咯
离线zyc52351484
只看该作者 4楼 发表于: 2012-04-28
回 3楼(passion_wu) 的帖子
太感谢了,竟然没发现这个设置,唉,真悲剧
离线passion_wu
只看该作者 5楼 发表于: 2012-04-28
回 4楼(zyc52351484) 的帖子
但是你这样的话相应的控件不能获得焦点哦,比如输入框不能输入啊。我记得有其它方法的。
离线passion_wu
只看该作者 6楼 发表于: 2012-04-28
回 4楼(zyc52351484) 的帖子
有一个办法是重写主窗口的 keyPressEvent 事件。
快速回复
限100 字节
 
上一个 下一个