Qt jpg图像显示

Lil*_*ily 51 graphics video qt image view

我想在Qt UI中显示.jpg图像.我在网上查了一下,发现了http://qt-project.org/doc/qt-4.8/widgets-imageviewer.html.我认为Graphics View也会这样做,而且它还有编解码器来显示视频.如何使用Graphics View显示图像?我经历了图书馆,但因为我是Qt的全新人,所以我找不到开头的线索.你能指导一下如何在Qt中加载和显示图像的资源/示例吗?

谢谢.

Ben*_*n L 43

您可以将图像(作为像素图)附加到标签,然后将其添加到您的布局...

...

QPixmap image("blah.jpg");

QLabel imageLabel = new QLabel();
imageLabel.setPixmap(image);

mainLayout.addWidget(imageLabel);

...
Run Code Online (Sandbox Code Playgroud)

道歉,这是使用Jambi(Qt for Java)所以语法不同,但理论是一样的.


Woj*_*ski 39

#include ...

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QGraphicsScene scene;
    QGraphicsView view(&scene);
    QGraphicsPixmapItem item(QPixmap("c:\\test.png"));
    scene.addItem(&item);
    view.show();
    return a.exec();
}
Run Code Online (Sandbox Code Playgroud)

这应该工作.:)可在此处找到支持的格式列表

  • 我们如何在QT Creator中创建的UI中使用它? (29认同)
  • 请注意,对于Qt 4.6,此代码有错误.试试这个:int main(int argc,char*argv []){QString fileName("C:/aaa..gif"); QApplication a(argc,argv); QGraphicsScene场景; scene.addPixmap(的QPixmap(文件名)); QGraphicsView视图(&scene); view.show(); return a.exec(); } (4认同)
  • 要在Creator中使用,请将图像添加到资源文件中.创建一个QLabel(是的,默认情况下是文本)然后选择Pixmap属性.它将允许您选择要显示的图片. (2认同)
  • 与使用 QLabel 相比,该解决方案是否有任何优势,即性能或其他方面? (2认同)

小智 12

如果您想要做的唯一事情是将图像放入窗口小部件而不需要图形API的复杂性,您还可以创建一个新的QWidget并使用StyleSheets设置背景.像这样的东西:

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent)
{
    ...
    QWidget *pic = new QWidget(this);
    pic->setStyleSheet("background-image: url(test.png)");
    pic->setGeometry(QRect(50,50,128,128));
    ...
}


zar*_*zar 5

  1. 将标签(QLabel)添加到要显示图像的对话框中。这个QLabel实际上会显示图像。将其调整为您希望图像显示的大小。

  2. 将图像添加到项目中的资源中。

  3. 现在进入 QLabel 属性并选择您添加到pixmap属性资源中的图像。确保检查下一个属性scaledContents以将图像缩小到您想要看到的尺寸。

就这样,图像现在就会显示出来。