QWidget的setFocusPolicy的注意事项

1.实际开发碰到的场景:

对于Qt的控件,如QLineEdit,QSpinbox,QPushButton,QSlider等等,可以通过键盘的Tab按键获得焦点,可能在某些时候并不希望如此。


2.错误记录:

QWidget的setFocusPolicy方法为默认Qt::StrongFocus,即用户可以通过tab获得焦点,也可以通过鼠标点击获得焦点。于是,修改了其默认属性,setFocusPolicy为Qt::NoFocus。虽然问题是解决了,但是,却导致了该控件没法响应change事件。


3.解决方法:

setFocusPolicy为Qt::ClickFocus。
 

发布了187 篇原创文章 · 获赞 45 · 访问量 23万+

猜你喜欢

转载自blog.csdn.net/wltsysterm/article/details/104478972