搜了很多资料,然后总结一下禁用复制、剪切、粘贴功能,关闭右键点击菜单如何实现?

具体实现如下:

PasswordLineEdit::PasswordLineEdit(QWidget *parent)

    : QLineEdit(parent)

{

    ui->lineEdit_passwd->installEventFilter(this);

}

//屏蔽输入框全选、复制、粘贴、剪切功能

void PasswordLineEdit::keyPressEvent(QKeyEvent *event)

{

    if(event->matches(QKeySequence::SelectAll)

            || event->matches(QKeySequence::Copy)

            || event->matches(QKeySequence::Paste) || event->matches(QKeySequence::Cut))

    {

        return ture;

    }

 

    QLineEdit::keyPressEvent(event);

}

//在QKeySequence中有很多和键盘控制有关的设置,可以根据自己需求,自己进行更改。可以参考https://blog.csdn.net/ljhandlwt/article/details/52354139;配置QKeySequence。

下面屏蔽右键出现菜单的步骤:

qt中密码输入栏,禁用复制、剪切、粘贴功能,关闭右键点击菜单功能

直接将contextMenuPolicy设置一下就可以了。找了半天资料,终于实现了,下面总结一下:

在构造函数中使用installEventFilter函数安装过滤器,在下面实现eventFilter过滤方法,处理复制、剪切、粘贴的功能,对于关闭右键菜单的功能,在ui中设置一下就行了。

相关文章:

  • 2021-12-31
  • 2021-11-05
  • 2021-11-04
  • 2021-10-16
  • 2022-12-23
  • 2021-12-03
  • 2022-12-23
  • 2021-09-06
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-11-17
  • 2021-06-25
  • 2022-01-08
  • 2022-12-23
相关资源
相似解决方案