要实现你描述的样式,可以使用如下的样式表:
// 创建QMenu对象
QMenu* menu = new QMenu(this);
// 设置背景颜色和字体颜色
menu->setStyleSheet("background-color: #FFFFFF; color: #000000;");
// 添加菜单项
QAction* action1 = menu->addAction("菜单项1");
QAction* action2 = menu->addAction("菜单项2");
// ...
// 设置鼠标滑过样式
QString hoverStyle = "QMenu::item:hover { background-color: #3F7AFF; color: #6192FF; }";
action1->setStyleSheet(hoverStyle);
action2->setStyleSheet(hoverStyle);
// ...
// 设置点击子项样式
QString selectedStyle = "QMenu::item:selected { background-color: #3F7AFF; color: #FAFBFF; }";
action1->setStyleSheet(selectedStyle);
action2->setStyleSheet(selectedStyle);
// ...
// 在需要显示菜单的地方调用exec()方法显示菜单
menu->exec(QCursor::pos());
在上面的代码中,通过设置background-color
属性来指定背景颜色,color
属性来指定字体颜色。同时,使用了特定的伪状态选择器 hover
和 selected
来定义鼠标滑过和点击子项时的样式。根据你提供的要求,当鼠标滑过时文字变为蓝色(#6192FF),点击子项时背景变为蓝色(#3F7AFF),文字变为白色(#FAFBFF)。
请注意,以上代码仅供参考,你可以根据实际需求进行调整和扩展。
内容由零声教学AI助手提供,问题来源于学员提问