我是Qt新手,請原諒我的無知。Qt:創建一個「svg圖像按鈕」
我正在嘗試用QSizePolicy :: Preferred爲水平和垂直創建一個'svg圖像按鈕'。 這部分工作。當窗口調整大小時,按鈕會隨着我的需要而增長和縮小......但按鈕內的圖像保持相同的大小。 我希望圖像可以用按鈕縮放。我試圖重載resizeEvent,並調用setImageSize,但這無限遞歸。
#ifndef SVGPUSHBUTTON_H
#define SVGPUSHBUTTON_H
#include <QtGui>
class SVGPushButton : public QPushButton
{
public:
SVGPushButton(QString path, QString name = "");
~SVGPushButton();
void resizeEvent(QResizeEvent * event);
private:
};
#endif // SVGPUSHBUTTON_H
#include "SVGPushButton.h"
SVGPushButton::SVGPushButton(QString svgPath, QString name)
: QPushButton(name)
{
QIcon icon(svgPath);
setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
setFlat(true);
setIcon(icon);
}
SVGPushButton::~SVGPushButton()
{}
void SVGPushButton::resizeEvent(QResizeEvent * event)
{
setIconSize(event->size());
}
JFYI,它的Qt的,不是QT。 – 2009-06-09 21:54:19