给QPushButton添加一个QMenu,QMenu比QPushButton小。 QMenu有一个信号aboutToShow,显示时发出。所以可以设置: QMenu *menu = new QMenu(myBtn); connect(menu , &QMenu::aboutToShow, this, [=]