1
저는 win7에서 매우 간단한 응용 프로그램을 개발 중이며 win8에서 실행 중입니다. win7에서 실행할 때 내 QGraphicsObject
하위 클래스에서 그려지는 pixmap을 보여줍니다. 그러나 내가 exe와 dll을 내 타블렛에 복사하면 픽스맵이 표시되지 않지만 다른 모든 것은 동일합니다.QGraphicsObject가 QPixmap을 표시하지 않습니다.
또 다른 문제는 예기치 않게 닫힌 응용 프로그램을 종료 할 때입니다.
여기에 여기에 관련 부품
myImage::myImage(QGraphicsObject *parent) :
QGraphicsObject(parent)
{
pxm = new QPixmap("://images/flower.jpg");
setScale(0.5);
}
QRectF myImage::boundingRect() const
{
QRectF rect(0,0,pxm->width(),pxm->height());
return rect;
}
void myImage::paint(QPainter* painter,
const QStyleOptionGraphicsItem* /*option*/,
QWidget* /*widget*/)
{
painter->drawPixmap(0, 0, pxm->width(), pxm->height(), *pxm);
}
그리고 여기에 문제는 당신이 Qt는 네이티브가 아닌 JPEG 이미지를 사용하고 있다는 것입니다 주요 기능
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QGraphicsScene scene;
myImage img;
scene.addItem(&img);
QGraphicsView view(&scene);
QWidget window;
window.setFixedHeight(400);
window.setFixedWidth(500);
window.setSizePolicy(QSizePolicy::Fixed,QSizePolicy::Fixed);
QPushButton button("Quit");
QObject::connect(&button,SIGNAL(clicked()),&app,SLOT(quit()));
QVBoxLayout layout;
layout.addWidget(&view);
layout.addWidget(&button);
window.setLayout(&layout);
window.show();
return app.exec();
}
감사합니다. 문제가 해결되었습니다. – uLtRaLoVeR