2017-08-01 1 views
0

右クリックのcustomMenuRequestedスロットでは、qtexteditの標準コンテキストメニューの最後に項目を追加できます。しかし、これは "私は新しい!" itemはすべての標準的なものの後にコンテキストメニューの一番下にあります。どのように標準コンテキストメニューの上のすべての項目の上にそれを置くことができますか?ありがとう。QtのQtexteditのstardard右クリックメニューの上に項目を挿入する方法

void MainWindow::customMenuRequested(QPoint pos) 
{ 
    QMenu stdMenu=QMenu(ui->textedit->createStandardContextMenu()); 
    QMenu *newMenu = stdMenu->addMenu("I'm new!"); 

    menu->popup(ui->textedit->viewport()->mapToGlobal(pos)); 
} 

答えて

0

解決策を見つけました!

void MainWindow::customMenuRequested(QPoint pos) 
    { 
    QMenu* stdMenu= ui->textedit->createStandardContextMenu(); 
    QMenu* newMenu = new QMenu("I'm new!"); 
    stdMenu->insertMenu(stdMenu->actions().first(), newMenu); 
    menu->popup(ui->textedit->viewport()->mapToGlobal(pos)); 
    } 
関連する問題