自定义QMenu图标大小

标签: QMenu 图标
3478人阅读 评论(6) 收藏 举报
分类:


上代码:

///////////////////////////////////////////////////////////
// QMenu的大图标定义
///////////////////////////////////////////////////////////

#ifndef CUSTOMICONSTYLE_H
#define CUSTOMICONSTYLE_H

#include <QCommonStyle>

class CustomIconStyle : public QCommonStyle
{
	Q_OBJECT

public:
	CustomIconStyle();
	~CustomIconStyle();

	void SetCustomSize(int);

	//protected:
	virtual int pixelMetric(PixelMetric metric, const QStyleOption * option, const QWidget * widget) const;

private:
	int mSize;
};

#endif // CUSTOMICONSTYLE_H

#include "CustomIconStyle.h"

CustomIconStyle::CustomIconStyle()
{
	mSize = 20;
}

CustomIconStyle::~CustomIconStyle()
{

}


void CustomIconStyle::SetCustomSize( int nSize )
{
	mSize = nSize;
}

int CustomIconStyle::pixelMetric( PixelMetric metric, const QStyleOption * option, const QWidget * widget ) const
{
	int s = QCommonStyle::pixelMetric(metric, option, widget);
	if (metric == QStyle::PM_SmallIconSize) {
		s = mSize;
	}

	return s;
}

调用方法:

CustomIconStyle* pStyle = new CustomIconStyle;
	mpMikeMenu->setStyle(pStyle);


查看评论

Qt学习笔记:QMenuBar()、QMenu()和QAction()的使用

Qt中要建立菜单,有三个类很重要: QMenuBar(QWidget * parent = 0) QMenu(QWidget * parent = 0) QMenu(const Q...
  • founderznd
  • founderznd
  • 2016-05-14 22:29:03
  • 4820

QtCreator 应用程序主窗口——菜单栏(QMenuBar)和工具栏(QToolBar)

1.菜单栏(QMenuBar)和工具栏(QToolBar)
  • psujtfc
  • psujtfc
  • 2014-07-16 15:37:41
  • 3837

QMenu上icon的大小设置

昨天项目中遇到一个问题,就是弹出QMenu时,item上的icon太小,而且通过stylesheet还改不了,原来QMenu默认的icon最大是16px*16px。后来google了一下,在QtCen...
  • far5eer
  • far5eer
  • 2010-11-20 13:39:00
  • 4124

QMenu StyleSheet 的使用

QMenu StyleSheet 的使用QMenu *menu = new QMenu(); menu->addAction("aaaa"); menu->addAction("bbbb...
  • linux_wgl
  • linux_wgl
  • 2016-09-18 02:39:36
  • 2734

Qt自定义Qmenu样式,使用Stylesheet

在网上搜了很多教程,特此整理一下。这段代码可以自定义背景,选框,按下操作的颜色和字体颜色。 为了强调我把颜色和边框都弄的很突兀,方便修改。 环境Qt5.9 ,MinGw 代码和效果图如下: ...
  • PepperEggFriedRice
  • PepperEggFriedRice
  • 2017-12-21 10:52:25
  • 730

qt中的菜单QMenu QAction

Qt中要建立菜单,有三个类很重要: QMenuBar(QWidget * parent = 0) QMenu(QWidget * parent = 0) QMenu(const QString &...
  • swartz_lubel
  • swartz_lubel
  • 2017-02-11 16:52:14
  • 3871

QT QMenu美化备忘

QMenu { background-color:white; background-image: url(../qss/menuBack.png) ; background-repeat: r...
  • zhouxiao2009
  • zhouxiao2009
  • 2014-04-05 14:13:23
  • 1480

Qt 中关于 QWidget 添加菜单栏 菜单栏可以 随窗口大小伸缩

在Qt中添加菜单栏,大多数都直接在QMainWindow中添加,但需要自定义标题栏后,菜单栏和标题栏就可以融合在一起了。 本文是通过几番转折才做出客户想要的效果,实现效果主要是从Qt 源码中找到的,...
  • zxcvqpdbzl
  • zxcvqpdbzl
  • 2017-07-09 01:48:27
  • 651

QMenu的个性化定制

经常使用菜单,菜单的定制相当重要,普通的样式设置不难,一般需求足以实现(QMenu + QAction)。 如果要足够个性,则需要进行一定的定制。     说起定制,其实也是利用Qt中现成...
  • xzh_blue
  • xzh_blue
  • 2015-08-17 16:22:08
  • 487

Qt中菜单创建及自定义数据类型与QVariant互转

diagramtextitem.h: /**************************************************************************** ** ...
  • ljt350740378
  • ljt350740378
  • 2016-08-04 15:58:32
  • 677
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 74万+
    积分: 9218
    排名: 2870
    博客专栏
    文章分类
    最新评论