【问题标题】:view an image in qt for symbian在 qt for symbian 中查看图像
【发布时间】:2011-09-17 18:06:21
【问题描述】:

我有一个我实现的应用程序,并且想在一个小部件中显示一个图像,但是我收到一个错误 SIGSEGV,我从一个目录中查看它,但实际上是在从缓冲区中提取之后 不是什么问题,我把代码留在这里:

void Image:: on_pushButton_clicked ()
{

     this-> conn-> connect (this-> ui-> lineEdit_2-> text (),
                      this-> ui-> lineEdit-> text (). Toint ()); QLayout* layout;

        QString fileName = QFileDialog:: GetOpenFileName (this,
                                                        tr ("Open File"), QDir:: currentPath (),
                                                        "files (*. jpg *. png)");

        QImage image (fileName);

        QLabel * label = new QLabel (this);
        label-> setPixmap (QPixmap:: FromImage (image));

        label-> setScaledContents (true);

        layout-> addWidget (label);
        label-> show ();

}

如果您想帮助我的应用程序链接下载,我可以离开 非常感谢


非常感谢,我设法看到了图像,我想从这样的缓冲区加载:QBuffer * buffer = new QBuffer (conex); QImage * image = new QImage(); image->loadFromData(buffer->buffer());


我尝试了这个来制作我的图像,但我得到了错误 QBuffer * buffer = new QBuffer (conn); QImage image = new QImage (); image-> loadFromData (buffer-> buffer ()); 错误如下: C:\ejemplos_qt\teratermobile-build-simulator..\teratermobile\imagen.cpp:81: 错误:请求从“QImage*”转换为非标量类型“QImage” C:\ejemplos_qt\teratermobile-build-simulator..\teratermobile\imagen.cpp:82: 错误:'->' 的基本操作数具有非指针类型'QImage'

【问题讨论】:

    标签: qt


    【解决方案1】:

    在将 layout 变量用于类似以下内容之前,您没有初始化它:

    layout = new QVBoxLayout(widget); // widget is where you want to put the QLabel
    

    或者您可以重复使用已经创建的布局。

    如果您想将QLabel 显示为顶级窗口,请完全删除关于layout 的两行。

    【讨论】:

      猜你喜欢
      • 2012-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多