Categorías
Otros

QMenu opción de menú Cambio de tamaño de icono

Código directamente

.h

#ifndef DFMENUICONSTYLE
#define DFMENUICONSTYLE



#include <QObject>
#include <QCommonStyle>

class DFMenuIconStyle : public QCommonStyle
{
	Q_OBJECT

public:
	DFMenuIconStyle();
	~DFMenuIconStyle();

	void SetCustomSize(int);
	//protected:
	virtual int pixelMetric(PixelMetric metric, const QStyleOption* option, const QWidget* widget) const;
private:
	int m_nSize = 24;
};

#endif // !DFMenuIconStyle

Cpp

#include "DFMenuIconStyle.h"

DFMenuIconStyle::DFMenuIconStyle()
	: QCommonStyle()
{
}

DFMenuIconStyle::~DFMenuIconStyle()
{
}

void DFMenuIconStyle::SetCustomSize(int size)
{
	m_nSize = size;
}

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

Citar

m_pMenu = nuevo QMenu(this);
m_pMenuStyle = nuevo DFMenuIconStyle();
m_pMenu->setStyle(m_pMenuStyle);

.

  Escenarios de uso de puntos de conocimiento de referencias blandas o referencias débiles en el desarrollo real

Por Programación.Click

Más de 20 años programando en diferentes lenguajes de programación. Apasionado del code clean y el terminar lo que se empieza. ¿Programamos de verdad?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *