0
저는 C++에서 PyQt5에서 Qt5로 전환하는 중입니다. 힘든 시간을 보내고 있습니다. logo
이라는 Qwidget을 포함하는 간단한 UI를 만들었습니다.UI에서 Qt5 위젯 속성
QSvgRenderer renderer(QString(":/LogoSVG.svg"));
QImage image(500, 200, QImage::Format_ARGB32);
image.fill(0x000000);
QPainter painter(&image);
renderer.render(&painter);
파이썬에서, 내가
을하려는 UI 형태 로더 클래스에 다음 SVG를 렌더링하는 간단한 위젯 클래스를 만들 것입니다 :이이 코드 위젯 렌더링 SVG 위젯 만들기 위해 노력하고있어self.logo = SVGRender(self)
나는 C++ Qt를에서 같은 일을 할 노력하고있어, 그래서 여기 내가 지금까지 무엇을 그리고 그것은 오류 error: cannot convert ‘logoW’ to ‘QWidget*’ in assignment
example.h
#ifndef EXAMPLE_H
#define EXAMPLE_H
#include "ui_example.h"
class example : public QWidget
{
Q_OBJECT
public:
example(QWidget *parent = 0);
private:
Ui::example ui;
};
class logoW: public QWidget
{
Q_OBJECT
public:
logoW(QWidget *parent = 0);
};
#endif
을 반환하는 것
example.cpp
#include <QtGui>
#include <QScreen>
#include <QApplication>
#include <QDesktopWidget>
#include <QCoreApplication>
#include <QSvgRenderer>
#include <QPainter>
#include <QImage>
#include <iostream>
#include "example.h"
using namespace std;
example::example(QWidget *parent)
: QWidget(parent)
{
ui.setupUi(this);
ui.logo = logoW(this)
}
logoW :: logoW(QWidget * parent = 0){
QSvgRenderer renderer(QString(":resources/LogoSvg.svg"));
QImage image(500, 200, QImage::Format_ARGB32);
image.fill(0xaaA08080);
QPainter painter(&image);
renderer.render(&painter);
}
누군가가 내가 잘못 걸 보여줄 수 있습니까?
ui.logo = logoW(this);
에 : 나는 또한 당신이에서 이미지를 표시 할 것을 이해
ui.logo = new logoW(this);
Welp, new'가 컴파일 할 수 및 편집'추가 작동하게 만들었습니다. 도와 주셔서 감사 드리며 지금 내가 잘못한 것을 알고 있습니다. – aseylys