当前位置: 首页 > news >正文

新闻app开发3分钟搞定网站seo优化外链建设

新闻app开发,3分钟搞定网站seo优化外链建设,做网站敲代码的图片,舟山网站建设哪家好Qt的菜单经常在软件开发中用到&#xff0c;默认的菜单效果都不符合设计师的要求&#xff0c;本篇介绍QMenu菜单的风格设计&#xff0c;包括样式表和阴影。 1.QMenu样式表的设计 首先看一个默认的菜单 void QGraphicsDropShadowEffectDemo::slotShowDialog() {qDebug() <&l…

Qt的菜单经常在软件开发中用到,默认的菜单效果都不符合设计师的要求,本篇介绍QMenu菜单的风格设计,包括样式表和阴影。

1.QMenu样式表的设计

首先看一个默认的菜单

void QGraphicsDropShadowEffectDemo::slotShowDialog()
{qDebug() << "slotShowDialog================================";QMenu menu;QAction *m_actionCut = menu.addAction(QStringLiteral("剪切"));QAction *m_actionCopy = menu.addAction(QStringLiteral("复制"));QAction *m_actionPaster = menu.addAction(QStringLiteral("粘贴"));m_actionPaster->setEnabled(true);QPoint point = mapToGlobal(ui->pushButton->pos());point += QPoint(2, 30);menu.exec(point);
}

添加qss风格

QString strMenuStyle = QString("QMenu{background-color:#FFFFFF;border-radius:5px;margin:10px 10px 10px 10px;}""QMenu::item{color:#333333;height:24px;background-color:#FFFFFF;border-radius:5px;border:1px solid #FFFFFF;font-size:12px;padding:3px 10px 3px 10px;margin:3px 10px 3px 10px;}""QMenu::item:selected{background-color:#2F89FC;color:#FFFFFF;}""QMenu::item:pressed{background-color:#2F89FC;color:#FFFFFF;}""QMenu::item:!enabled{background-color:#666666;color:#FFFFFF;}");
menu.setStyleSheet(strMenuStyle);

运行效果

这种弹出的没有凹凸感,需要添加阴影,阴影一般情况下有两种方法,一种是自已绘制,另一种是采用QGraphicsDropShadowEffect实现,绘制的之前试了,没有效果,因此这里采用QGraphicsDropShadowEffect的方式实现。

    QMenu menu;menu.setWindowFlags(this->windowFlags()  | Qt::FramelessWindowHint | Qt::NoDropShadowWindowHint);menu.setAttribute(Qt::WA_TranslucentBackground);QGraphicsDropShadowEffect *shadow = new QGraphicsDropShadowEffect(this);shadow->setOffset(0, 0);shadow->setColor(QColor("#333333"));shadow->setBlurRadius(10);menu.setGraphicsEffect(shadow);

setBlurRadius里的10一定要写qss里的margin:10px 10px 10px 10px;对应,否则没有校果

这样带阴影的效果明显好很多。

如果有多个菜单使用,可以把这个自定义为一个菜单类。

#ifndef CUSTOMMENU_H
#define CUSTOMMENU_H#include <QMenu>class CustomMenu: public QMenu
{
public:CustomMenu(int paddingLeft = 20, int paddingRight = 20, QWidget *parent = nullptr);};#endif // CUSTOMMENU_H
#include "custommenu.h"
#include <QPainter>
#include <QPainterPath>
#include <QGraphicsDropShadowEffect>
#include <QtMath>
#include <QDebug>CustomMenu::CustomMenu(int paddingLeft, int paddingRight, QWidget *parent) : QMenu(parent)
{this->setWindowFlags(this->windowFlags()  | Qt::FramelessWindowHint | Qt::NoDropShadowWindowHint);this->setAttribute(Qt::WA_TranslucentBackground);QGraphicsDropShadowEffect *shadow = new QGraphicsDropShadowEffect(this);shadow->setOffset(0, 0);shadow->setColor(QColor("#333333"));shadow->setBlurRadius(10);this->setGraphicsEffect(shadow);QString strMenuStyle = QString("QMenu{background-color:#FFFFFF;border-radius:5px;margin:10px 10px 10px 10px;}""QMenu::item{color:#333333;height:24px;background-color:#FFFFFF;border-radius:4px;border:1px solid #FFFFFF;font-size:12px;padding:3px %1px 3px %2px;margin:3px 10px 3px 10px;}""QMenu::item:selected{background-color:#2F89FC;color:#FFFFFF;}""QMenu::item:pressed{background-color:#2F89FC;color:#FFFFFF;}""QMenu::item:!enabled{background-color:#999999;color:#FFFFFF;}").arg(paddingRight).arg(paddingLeft);this->setStyleSheet(strMenuStyle);
}

使用

void QGraphicsDropShadowEffectDemo::slotShowDialog()
{qDebug() << "slotShowDialog================================";CustomMenu menu(20, 20);
//    QAction *m_actionAdd = new QAction(QIcon(":/images/menu_add.png"), QStringLiteral("添加"));
//    QAction *m_actionDelete = new QAction(QIcon(":/images/menu_delete.png"), QStringLiteral("删除"));//menu.addAction(m_actionAdd);//menu.addAction(m_actionDelete);QAction *m_actionCut = menu.addAction(QStringLiteral("剪切"));QAction *m_actionCopy = menu.addAction(QStringLiteral("复制"));QAction *m_actionPaster = menu.addAction(QStringLiteral("粘贴"));m_actionPaster->setEnabled(true);QPoint point = mapToGlobal(ui->pushButton->pos());point += QPoint(2, 30);menu.exec(point);
}

http://www.hkea.cn/news/53761/

相关文章:

  • 设计网站大全网公司推广咨询
  • 北京网站建设价格上海关键词排名优化公司
  • 浙江华临建设集团有限公司网站seo优化网站词
  • 服装网站建设规划书范文免费的行情网站
  • 合肥企业自助建站seo课程培训班
  • 企业网站建设总结什么软件可以免费引流
  • 个人博客网站如何做SEO雅诗兰黛网络营销策划书
  • 唐山自助建站软件seo软件优化工具软件
  • 推广电子商务网站的案例网站推广策划书模板
  • 前端外包网站网站优化快速排名软件
  • 凡客做网站cba最新消息
  • 郑州做网站好的公搜索引擎优化好做吗
  • 网站 预算白度
  • 中国电商建站程序信息推广
  • 网站开发教程 布局优化技术
  • 做外贸网站需要请外贸文员吗网站seo诊断分析和优化方案
  • 百度网站怎么做的赚钱吗seo中文含义
  • 做网站界面的软件互联网培训
  • 电子商务网站建设与维护李建忠高级搜索引擎技巧
  • 做地产网站全网搜索软件
  • 网站开发培训班百度网站推广关键词怎么查
  • 东莞市做网站公司seo怎样
  • ps做网站大小尺寸应用商店优化
  • 网站站群建设方案知名网页设计公司
  • 广州网站建设公司哪家好专业的seo搜索引擎优化培训
  • 外国人做汉字网站seo搜索排名影响因素主要有
  • 外贸五金网站建设网站制作优化排名
  • 义乌网站建设多少钱网络平台营销
  • 怀仁有做网站的公司吗磁力搜索引擎2023
  • 建站行业都扁平化设计合肥网站推广公司哪家好