我想在QMainWindow
中添加图标,当我点击该窗口时,它应该像弹出窗口一样执行某些操作。那么我应该为icon menu
使用什么?
答案 0 :(得分:1)
您可以使用QToolButton类来完成此任务。
可以将其设置为仅包含没有文字的图像/图标。
l按钮通常在使用QToolBar :: addAction()创建新QAction实例或使用QToolBar :: addAction()将现有操作添加到工具栏时创建。也可以使用与任何其他窗口小部件相同的方式构建工具按钮,并将它们与布局中的其他窗口小部件一起排列。
工具按钮的图标设置为QIcon。这使得可以为禁用和活动状态指定不同的像素图。当按钮的功能不可用时,将使用禁用的像素映射。自动引发按钮时会显示活动像素图,因为鼠标指针悬停在按钮上。
按钮的外观和尺寸可通过setToolButtonStyle()和setIconSize()进行调整。当在QMainWindow中的QToolBar中使用时,该按钮会自动调整为QMainWindow的设置(请参阅QMainWindow :: setToolButtonStyle()和QMainWindow :: setIconSize())。工具按钮也可以显示箭头符号,而不是图标,使用arrowType指定。
所以,你会使用这些方法:
QAction * QToolBar::addAction(const QIcon & icon, const QString & text)
使用给定的图标和文本创建新操作。此操作将添加到工具栏的末尾。
和
toolButtonStyle : Qt::ToolButtonStyle
此属性用于确定工具按钮是仅显示图标,仅显示文本还是在图标旁边/下方显示文字。
默认值为Qt :: ToolButtonIconOnly。
要使工具按钮的样式遵循系统设置(在GNOME和KDE桌面环境中可用),请将此属性设置为Qt :: ToolButtonFollowStyle。
QToolButton会自动将此插槽连接到QMainWindow所在的相关信号。
如您所见,默认为仅图标。