3.Qt::CustomContextMenu使用Qt::CustomContextMenu时会发出信号 customContextMenuRequested()。通过该信号,可以获得当前鼠标的位置,通过位置可以做更多我们想做的事。下面是一个简单的完整的例子。头文件:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 #ifndef MENU...
默认是Qt::DefaultContextMenu,它是利用右键菜单事件contextMenuEvent()来处理(which means the contextMenuEvent() handler is called)。就是要重写contextMenuEvent( QContextMenuEvent * event )函数。 你可以通过UI属性来设置: void MainWindow::contextMenuEvent(QContextMenuEvent *event) { QMenu Context; Con...
2.1 Qt::DefaultContextMenu 使用这个策略实现右键菜单, 需要借助窗口类从父类继承的虚函数QWidget::contextMenuEvent()并重写它来实现。 要做的第一步是在窗口类的头文件中添加这个函数的声明 // mainwindow.h#include<QMainWindow>namespaceUi {classMainWindow; }classMainWindow:publicQMainWindow { Q_OBJECTpubli...
Qt::ContextMenuPolicy枚举类型包括:Qt::DefaultContextMenu, Qt::NoContextMenu, Qt::PreventContextMenu, Qt::ActionsContextMenu, and Qt::CustomContextMenu。 使用方式如下: 1)默认是Qt::DefaultContextMenu。 它是利用右键菜单事件contextMenuEvent()来处理(which means the contextMenuEvent() handler is calle...
void setContextMenuPolicy(Qt::ContextMenuPolicy policy) 该属性描述了widget如何显示上下文菜单。默认值为Qt::DefaultContextMenu,其实是调用了contextMenuEvent()函数。 其他的值还有:Qt::NoContextMenu,Qt::PreventContextMenu,Qt::ActionsContextMenu和Qt::CustomContextMenu。如果用自定义的Qt::CustomContextMenu,...
1.Qt::NoContextMenu,本对象不显示右键菜单,由父对象决定,如果本例子中的参数设置为该值,那前面加的Action都没啥用! 2.Qt::DefaultContextMenu,默认的属性值,当前类的对象调用QWidget::contextMenuEvent()这个函数, 子类可以重写该事件处理函数,然后进行添加Action的操作。
在上一篇博文《C/C++ Qt ListWidget 列表框组件应用》中介绍了ListWidget组件的基本使用技巧,本次将给...
1)默认是Qt::DefaultContextMenu。 它是利用右键菜单事件contextMenuEvent()来处理(whichmeansthecontextMenuEvent()handleriscalled)。就是要重写contextMenuEvent(QContextMenuEvent*event)函数。 2)使用Qt::CustomContextMenu。 它是发出QWidget::customContextMenuRequested信号,注意仅仅只是发信号,意味着要自己...
非交互式视图禁用此模式。setDragMode(RubberBandDrag);// 设置支持鼠标右键弹出菜单setContextMenuPolicy(Qt::DefaultContextMenu);// 设置横向和纵向滚动条常开setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn);setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOn);// 设置黑色背景setStyleSheet("QGraphicsView { ...
上面的代码分别创建了四个菜单项,action1-action4,并创建了两个菜单mainMenu和nextMenu,其中nextMenu作为mainMenu的二级菜单,最后将菜单添加到主窗口的水平菜单栏控件中。 QToolBar 提供了一个包含一组控件的可移动面板,可以分别停靠在主窗口的上下左右侧,我们可以将我们创建的Action添加到QToolBar中,也可以通过addWidget(...