在对应控件的属性中,将contextMenuPolicy设置为CustomContextMenu。

在对应控件上右键选择槽函数customContextMenuRequested(QPoint)。

在槽函数中输入如下代码,添加右键菜单。

- //右键菜单
- void MainWindow::on_stackedWidget_customContextMenuRequested(const QPoint &pos)
- {
- QMenu * menu = new QMenu(this);
- QAction *action = new QAction;
- action->setText(("适应窗口宽度"));
- connect(action, SIGNAL(triggered(bool)), this, SLOT(PageZoomToWidth()));
- menu->addAction(action);
- menu->exec(QCursor::pos());
- }
通过connect函数链接右键的处理函数,如下图所示。

- //恢复到合适大小
- void MainWindow::PageZoomToWidth()
- {
- //*******************文件打开状态才响应*******************
- if (!pdf->hasOpenDocument()) {
- return;
- }
-
- pdf->zoomCentered(XpdfWidget::zoomToWidth);
- }
右键的处理函数需要作为slots,在头文件中定义
