日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

qt 右键菜单事件

發布時間:2023/12/20 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 qt 右键菜单事件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

有時候需要右鍵菜單完成一些小功能,不方便直接用按鈕;

使用右鍵菜單,方法很多 有一篇博客很全 Qt實現右鍵菜單的五種方法!(以QListWidget為例)

但是常用的就是重寫virtual void contextMenuEvent(QContextMenuEvent *event);右鍵菜單函數.

以保存halcon圖片為例子;

一 頭文件

#include <QContextMenuEvent>

二 重寫事件聲明

protected :virtual void contextMenuEvent(QContextMenuEvent *event); private slots: void saveimage();

三 具體實現

void CameraDtecte1::contextMenuEvent(QContextMenuEvent *event) {//創建一個菜單 添加事件QMenu *menu = new QMenu();QAction *minimized = new QAction(u8"保存圖片",this);menu->addAction(minimized);connect(minimized, SIGNAL(triggered(bool)), this, SLOT(saveimage()));//讓菜單移動到鼠標位置并顯示.menu->exec(QCursor::pos()); } void CameraDtecte1::saveimage() {HObject image;HTuple win;try {if (CurrentCCD.right(1).toInt() <= 6){win = hv_WindowID[CurrentCCD.right(1).toInt()];DumpWindowImage(&image,win);QString filename = QFileDialog::getSaveFileName(this, QString::fromLocal8Bit("保存文件位置"), "", tr("image file(*.bmp)"));if (!filename.isNull()) {QTextCodec *pcode = QTextCodec::codecForName("gb18030");string na = pcode->fromUnicode(filename).data();WriteImage(image, "bmp", 0, na.c_str());}}}catch (exception) {}}

?

總結

以上是生活随笔為你收集整理的qt 右键菜单事件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。