我遇到了一个相当奇怪的场景,我使用Qt键来实现一些函数,但即使将它们分成不同的大小写(对于F9、F10和F11),每当我按下F10或F11时,它都会首先转到F9 case (实现KeyF9()),然后实现它们自己的透视函数(KeyF10()/KeyF11())。
if ((e->key() & Qt::Key_F9) == Qt::Key_F9)
KeyF9();
if ((e->key() & Qt::Key_F10) == Qt::Key_F10)
KeyF10();
if ((e->key() & Qt::Key_F11) == Qt::Key_F11)
KeyF11();还有没有其他人遇到类似的情况,请帮帮我。提前谢谢。
发布于 2020-02-25 13:50:19
你不应该像使用掩码一样使用Qt::key的枚举,因为它不是。
if(e->key() == Qt::Key_F9)
KeyF9();一切都会好的。
https://stackoverflow.com/questions/60387685
复制相似问题