創建壹個新的窗口程序,然後創建壹個QMenu對象。在構造函數中初始化。
menu = new QMenu(“菜單”,this);//菜單是在頭文件中聲明的
q action * action = new q action(tr(" 1111 "),this);//為了使目錄更大並且可見,我們添加了壹個操作。
菜單->;addAction(動作);
然後在mousePressEvent中查看效果。
void對話框::mousePressEvent(QMouseEvent *e)
{
如果(e-& gt;Button() == Qt::RightButton) //鼠標右鍵。避免無法關閉窗口。
{
QPoint p(0,0);
//菜單-& gt;exec(p);//對於測試,坐標是相對於桌面的
菜單->;exec(e-& gt;global pos());//坐標相對於窗口
//菜單-& gt;exec(e-& gt;pos());//坐標是相對於桌面的
}
}
如妳所見,無論窗口如何移動,pos菜單總是出現在同壹個地方。GlobalPos隨著窗口相對移動。