zoukankan      html  css  js  c++  java
  • qt tableview中如何添加右键菜单且不可编辑单元格

    QTableView是一个比较实用的类,下面教给大家如何在QTableView中添加右键菜单。

    #include <QMenu>
    #include <QAction>

    QTableView *tableview;
    QMenu *rightMenu; //右键菜单
    QAction *cutAction; //剪切
    QAction *copyAction; //复制
    QAction *pasteAction; //粘贴
    QAction *deleteAction; //删除

    private slots:
    void clicked_rightMenu(const QPoint &pos); //右键信号槽函数

    tableView->setEditTriggers(QAbstractItemView::NoEditTriggers);//设置单元格不可编辑

    tableview->setContextMenuPolicy(Qt::CustomContextMenu); //少这句,右键没有任何反应的。

    createRightMenu(); //创建一个右键菜单
    connect(tableview,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(clicked_rightMenu(QPoint)));

    其中createRightMenu函数:

    rightMenu = new QMenu;
    cutAction = new QAction("剪切",this);
    copyAction = new QAction("复制",this);
    pasteAction = new QAction("粘贴",this);
    deleteAction = new QAction("删除",this);

    rightMenu->addAction(cutAction);
    rightMenu->addAction(copyAction);
    rightMenu->addAction(pasteAction);
    rightMenu->addAction(deleteAction);
    clicked_rightMenu槽函数:


    rightMenu->exec(QCursor::pos());

  • 相关阅读:
    [转]script之defer&async
    css3渐变gradient
    [转]提高 web 应用性能之 CSS 性能调优
    [转]深入了解 CSS3 新特性
    进程中t.start(), t.daemon() t.jion()的使用
    创建进程
    进程与进程之间通信Manager
    简版线程池
    Python上下文管理
    绝版线程池
  • 原文地址:https://www.cnblogs.com/tsh292278/p/11131557.html
Copyright © 2011-2022 走看看