C++ 奇怪的是,双击/鼠标拖动将触发按键事件;CTRL-C";
Qt的行为似乎很奇怪:当鼠标双击或拖动小部件时,它会触发Ctrl-C键事件。这是我的密码:C++ 奇怪的是,双击/鼠标拖动将触发按键事件;CTRL-C";,c++,qt,qwidget,C++,Qt,Qwidget,Qt的行为似乎很奇怪:当鼠标双击或拖动小部件时,它会触发Ctrl-C键事件。这是我的密码: class CWidget: public QWidget { Q_OBJECT public: CWidget() { }; virtual ~CWidget() { } protected: void keyPressEvent ( QKeyEvent * event ) { if (event->k
class CWidget: public QWidget
{
Q_OBJECT
public:
CWidget()
{
};
virtual ~CWidget()
{
}
protected:
void keyPressEvent ( QKeyEvent * event )
{
if (event->key() == Qt::Key_C && (event->modifiers() & Qt::ControlModifier))
{
qDebug() << "strange copy: Ctrl-C";
}
QWidget::keyPressEvent(event);
}
}; //
类CWidget:publicqwidget
{
Q_对象
公众:
CWidget()
{
};
虚拟~CWidget()
{
}
受保护的:
无效按键事件(QKeyEvent*事件)
{
if(event->key()==Qt::key_C&&(event->modifiers()&Qt::ControlModifier))
{
qDebug()您必须检查:
!event->isAutoRepeat();
您必须检查:
!event->isAutoRepeat();
我遇到了同样的问题,并最终找出了原因。这是由于使用翻译软件造成的,例如“有道词典". 当您双击或拖动时,可能会在文本区域拾取一些文本,而翻译软件正在通过某种方式劫持该操作,并自动触发复制操作,以使拾取的文本自动进行翻译。这导致了这种奇怪的行为
如果翻译软件没有打开,这不可能发生在英语用户身上,也不可能重现问题。我遇到了同样的问题,并最终找出了原因。这是由于使用翻译软件造成的,例如“有道词典“ 当您双击或拖动时,可能会在文本区域拾取一些文本,而翻译软件正在通过某种方式劫持该操作,并自动触发复制操作,以使拾取的文本自动进行翻译。这导致了这种奇怪的行为
如果翻译软件没有打开,这不可能发生在英语用户身上,也不可能重现问题。这解决了我的问题。我删除了这个狗屎字典软件。这解决了我的问题。我删除了这个狗屎字典软件。