• 7657阅读
  • 10回复

【解决】自定义右键菜单-我搜过历史帖-才会写下面-可还有问题 [复制链接]

上一主题 下一主题
离线lazybone
 
只看楼主 正序阅读 楼主  发表于: 2008-10-21
— 本帖被 XChinux 执行加亮操作(2008-10-21) —
这样可以使用自定义右键菜单
ui.textEdit.setContextMenuPolicy(Qt.ContextMenuPolicy.CustomContextMenu);

那怎么 修改  CustomContextMenu 的 Action呢

谢谢大家
[ 此贴被lazybone在2008-10-22 14:05重新编辑 ]
离线lazybone
只看该作者 10楼 发表于: 2008-10-22
Jambi
---------------------------
ui.viewUserTree.setContextMenuPolicy(Qt.ContextMenuPolicy.ActionsContextMenu);
    ui.viewUserTree.addAction(new QAction("1",this));
    ui.viewUserTree.addAction(new QAction("2",this));
好了 还得修改细节问题 谢谢各位
离线lazybone
只看该作者 9楼 发表于: 2008-10-22
引用第6楼chaoscxm于2008-10-21 15:49发表的  :
只要设置为actionContextMenu,然后直接调用要加menu的widget的addAction函数就可以了,不需要手动新建并添加qmenu

===================================
谢谢 我明白您的意思了 再试试
离线lazybone
只看该作者 8楼 发表于: 2008-10-22
谢谢站长 我再试试
离线XChinux

只看该作者 7楼 发表于: 2008-10-21
  // menuInst和treeView全为类成员变量(指针),teeView已生成
在构造函数中
{
  setupUi(this);
    menuInst = new QMenu(this);
    QAction *act = menuInst->addAction(tr("Chat Invite"));
    connect(act, SIGNAL(triggered()),
            this, SLOT(onChatInviteTriggered()));
    act = menuInst->addAction(tr("Chat Close"));
    connect(act, SIGNAL(triggered()),
            this, SLOT(onChatCloseTriggered()));

    treeView->setContextMenuPolicy(Qt::CustomContextMenu);
    connect(treeView,
            SIGNAL(customContextMenuRequested(const QPoint &)),
            this,
            SLOT(onContactViewCustomContextMenuRequested(const QPoint &)));
}

void ListenDockWidget::onContactViewCustomContextMenuRequested(const QPoint &pos)
{
        menuInst->popup(treeView->mapToGlobal(pos));
}
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线chaoscxm
只看该作者 6楼 发表于: 2008-10-21
只要设置为actionContextMenu,然后直接调用要加menu的widget的addAction函数就可以了,不需要手动新建并添加qmenu
帖子签名(将在每个帖子下方显示)
离线lxbin2003

只看该作者 5楼 发表于: 2008-10-21
addAction(action) ;
离线lazybone
只看该作者 4楼 发表于: 2008-10-21
谢谢  duduqq
那怎么把这个 menu 设为自定义 的 右键菜单?
离线duduqq

只看该作者 3楼 发表于: 2008-10-21
menu->addAction(action) ;
离线lazybone
只看该作者 2楼 发表于: 2008-10-21
引用第1楼chaoscxm于2008-10-21 13:21发表的  :
普通的右键菜单最好用ActionContextMenu,然后直接新建action加进去就可以了


请问怎样添加 Action ?
离线chaoscxm
只看该作者 1楼 发表于: 2008-10-21
普通的右键菜单最好用ActionContextMenu,然后直接新建action加进去就可以了
帖子签名(将在每个帖子下方显示)
快速回复
限100 字节
 
上一个 下一个