3

Qt::ShiftModifier我想知道和之间有什么区别Qt::Key_Shift吗?和有什么区别:

if(event->modifiers() & Qt::ShiftModifier){...}

if(event->modifiers() == Qt::ShiftModifier){...}
4

1 回答 1

4

Qt::ShiftModifier来自Qt::KeyboardModifier值为 0x02 的枚举。 Qt::Key_Shift来自Qt::Key值为 0x01000020 的枚举。

它们的“含义”是相同的,但它们在不同的上下文中使用。

if(event->modifiers() & Qt::ShiftModifier){...}

修饰符位域是否包含移位?这只是一个标准的 C/C++ 位操作。

if(event->modifiers() == Qt::ShiftModifier){...}

修饰符位域是否仅包含移位?

于 2013-05-31T12:18:16.107 回答