关闭

自定义QMenu图标大小

标签: QMenu图标
3306人阅读 评论(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);


0
0
查看评论

QMenu的个性化定制

QMenu的个性化定制 参考 http://blog.sina.com.cn/s/blog_a6fb6cc90101fxsc.html http://blog.chinaunix.net/xmlrpc.php?r=blog/index&uid=29181887&cid=184923&...
  • ljt350740378
  • ljt350740378
  • 2016-04-19 23:19
  • 941

QMenu 设置菜单图标 & 生成菜单树

效果图源码.h 文件protected slots: void onMenuTriggered(QAction*);.cpp 文件// 菜单 QMenu *pMenu = new QMenu(this); pMenu->addAction(QString::fromLo...
  • qq_35488967
  • qq_35488967
  • 2017-07-30 16:09
  • 538

QMenu上icon的大小设置

<br />昨天项目中遇到一个问题,就是弹出QMenu时,item上的icon太小,而且通过stylesheet还改不了,原来QMenu默认的icon最大是16px*16px。后来google了一下,在QtCenter.org找到解决方案---看这里 <br /><br...
  • far5eer
  • far5eer
  • 2010-11-20 13:39
  • 3888

QT 中设置 QMenu的ICON大小

如果在QMenu中设置ICON的话默认是很小的,QMenu也没有直接可以设置的接口。 在网上查找了后才明白设置方法,现在把它记录下,以免以后忘记,同时分享给有需要的人。   class NoFocusRectangleStyle : public QWindowsStyle { ...
  • HalsonHe
  • HalsonHe
  • 2011-12-15 12:13
  • 5047

Qt自定义Qmenu样式,使用Stylesheet

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

Qt C++ 改变QMenu的长宽

//设置菜单项的属性 QPoint p = this->rect().topRight(); p.setX(p.x() - 225); p.setY(p.y() + 27); // 添加菜单项 QMenu *radarMenu = this-&...
  • aa941096979
  • aa941096979
  • 2018-01-24 13:51
  • 39

使用QProxyStyle定制QMenu (一)

定制QWidget的样式的方式 使用Qt Style Sheets(qss)实现定制 继承QStyle实现定制 Qt Style Sheets的方式请参考我翻译的两篇文章: Qt Style Sheets–简介 Qt-Style-Sheets-语法 (翻译总有不完善的地方,请尽量参考英文原文) 后...
  • MatchYang
  • MatchYang
  • 2016-07-19 22:11
  • 1410

设置QMenu中菜单项的高度

QMenu::item{ height:34px; width:120px; padding-left: 30px; /* 距离左边的文字有多少padding */ }
  • pyf09
  • pyf09
  • 2017-05-10 23:36
  • 636

使用QStyle高端定制弹出菜单 QMenu源码剖析(二)

有了前一篇的基础后,为了定制出个性化的QMenu。很容易就可以知道,需要自己实现一个QStyle;而具体是实现哪些部分呢,这就需要知道 QMenu源码里面是调用QStyle的哪些接口来绘制的了;从QPushButton的paintEvent可以看出它是使用的drawControl(CE_PushBu...
  • wanghualin033
  • wanghualin033
  • 2017-12-03 13:46
  • 65

QMenu StyleSheet 的使用

QMenu StyleSheet 的使用QMenu *menu = new QMenu(); menu->addAction("aaaa"); menu->addAction("bbbb"); menu->addActi...
  • linux_wgl
  • linux_wgl
  • 2016-09-18 02:39
  • 2423
    个人资料
    • 访问:716294次
    • 积分:8982
    • 等级:
    • 排名:第2504名
    • 原创:182篇
    • 转载:125篇
    • 译文:1篇
    • 评论:109条
    博客专栏
    初识Qt

    文章:43篇

    阅读:147867
    文章分类
    最新评论