Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. How to display a picture
Forum Updated to NodeBB v4.3 + New Features

How to display a picture

Scheduled Pinned Locked Moved Solved General and Desktop
43 Posts 8 Posters 88.0k Views 5 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P Payx

    Okay !

    but : QImage QImage::copy(const QRect &rectangle = QRect()) const
    with this code we can work only in one rectangle no ?

    for example i thought cut my picture in pixels 4*4 and have a new image with resolution / 4 :

    i have to use a code like this :

    for (i=0,i<s.width()+1,i=i+4)
    for (j=0,j<s.height()+1,j=j+4)

     end 
    

    end

    mrjjM Offline
    mrjjM Offline
    mrjj
    Lifetime Qt Champion
    wrote on last edited by
    #23

    @Payx

    int step=4;
    for (i=0,i<s.width()+1,i=i+step)
      for (j=0,j<s.height()+1,j=j+step)
      just use  QImage QImage::copy(int x, int y, int width, int height) const
    

    This will generate small images of each 4x4

    P 1 Reply Last reply
    1
    • P Payx

      I put this "file:///C:/Users/David/Documents/addddd/r.jpg"

      Yes i added a Qlabel with the .ui and named label (dont worry i changed the name in my code)

      Pradeep KumarP Offline
      Pradeep KumarP Offline
      Pradeep Kumar
      wrote on last edited by
      #24

      @Payx said in How to display a picture:

      I put this "file:///C:/Users/David/Documents/addddd/r.jpg"

      Yes i added a Qlabel with the .ui and named label (dont worry i changed the name in my code)

      A small info, u can also place image in resource file of the project , so no need to worry about absolute path.

      Pradeep Kumar
      Qt,QML Developer

      1 Reply Last reply
      2
      • mrjjM mrjj

        @Payx

        int step=4;
        for (i=0,i<s.width()+1,i=i+step)
          for (j=0,j<s.height()+1,j=j+step)
          just use  QImage QImage::copy(int x, int y, int width, int height) const
        

        This will generate small images of each 4x4

        P Offline
        P Offline
        Payx
        wrote on last edited by
        #25

        @mrjj said in How to display a picture:

        @Payx

        int step=4;
        for (i=0,i<s.width()+1,i=i+step)
          for (j=0,j<s.height()+1,j=j+step)
          just use  QImage QImage::copy(int x, int y, int width, int height) const
        

        This will generate small images of each 4x4

        Okay i will test that.

        I got an other question, with that code : "QImage img("C:/path/filename.jpg");" i have to put the destination of the file (sorry for my english)

        but if i want to create a file explorer (for example in facebook we can change a picture with a file explorer and choose what picture i want)
        what can i do ?

        1 Reply Last reply
        0
        • mrjjM Offline
          mrjjM Offline
          mrjj
          Lifetime Qt Champion
          wrote on last edited by mrjj
          #26
          • but if i want to create a file explorer (for example in facebook we can change a picture with a file explorer and choose what picture i want)

          Im not 100% sure what you ask, but I give a guess:

          Instead of using a fixed path in the program you can use
          http://doc.qt.io/qt-5/qfiledialog.html
          to let user browser and select an image.

          Like in this example
          http://doc.qt.io/qt-5/qtwidgets-widgets-imageviewer-example.html

          so
          QImage img("C:/path/filename.jpg"
          becomes

          QString imagefile = QFileDialog::getOpenFileNames(this, tr("Files"), QDir::currentPath(), tr("*.jpg *.png"));
          QImage img(imagefile);

          Hope that is what you asked about.

          1 Reply Last reply
          0
          • P Offline
            P Offline
            Payx
            wrote on last edited by
            #27

            I found what i sought :

            QStringList fileNames = QFileDialog::getOpenFileNames(this, tr("Open Image"),"/path",tr("Image Files (*.jpg)"));

            But i got all files, and i just want .jpg for now """"""tr("Image Files (*.jpg)"));"""""""""" dont work ?

            then i want to put my picture file in a label, but i can't find how to convert a QStringList to a Qimage or Qpixmap

            mrjjM 1 Reply Last reply
            0
            • P Payx

              I found what i sought :

              QStringList fileNames = QFileDialog::getOpenFileNames(this, tr("Open Image"),"/path",tr("Image Files (*.jpg)"));

              But i got all files, and i just want .jpg for now """"""tr("Image Files (*.jpg)"));"""""""""" dont work ?

              then i want to put my picture file in a label, but i can't find how to convert a QStringList to a Qimage or Qpixmap

              mrjjM Offline
              mrjjM Offline
              mrjj
              Lifetime Qt Champion
              wrote on last edited by mrjj
              #28

              @Payx
              it should work with *.jpg.

              • but i can't find how to convert a QStringList to a Qimage or Qpixmap

              Oh just use
              fileName = QFileDialog::getOpenFileName(this,
              tr("Open Image"), "/", tr("Image Files (*.png *.jpg *.bmp)"));

              It only returns the 1 filename. ( NOTE THE MISSING s)

              ui->mylabel->setPixmap( new QPixmap(fileName ));

              1 Reply Last reply
              0
              • P Offline
                P Offline
                Payx
                wrote on last edited by
                #29

                I got one error : Expected one specifier before pixmap

                mrjjM 1 Reply Last reply
                0
                • P Payx

                  I got one error : Expected one specifier before pixmap

                  mrjjM Offline
                  mrjjM Offline
                  mrjj
                  Lifetime Qt Champion
                  wrote on last edited by mrjj
                  #30

                  @Payx
                  the class is QPixmap
                  so its "new QPixmap"

                  setPixmap( new QPixmap(fileName ));

                  Sorry, was just fast code.

                  1 Reply Last reply
                  1
                  • P Offline
                    P Offline
                    Payx
                    wrote on last edited by
                    #31

                    Yes i tried too before post but i had one error too, so i post the first error.

                    The second is :
                    No matching function for call to 'Qlabel::setPixmap(QPixmap*)"

                    mrjjM 1 Reply Last reply
                    2
                    • P Payx

                      Yes i tried too before post but i had one error too, so i post the first error.

                      The second is :
                      No matching function for call to 'Qlabel::setPixmap(QPixmap*)"

                      mrjjM Offline
                      mrjjM Offline
                      mrjj
                      Lifetime Qt Champion
                      wrote on last edited by mrjj
                      #32

                      @Payx
                      Sorry not enough coffee :)

                      QPixmap pix(fileName );
                      setPixmap(pix);

                      1 Reply Last reply
                      3
                      • Pradeep KumarP Offline
                        Pradeep KumarP Offline
                        Pradeep Kumar
                        wrote on last edited by Pradeep Kumar
                        #33

                        If u are using QImage

                        m_imageLabel = new QLabel;
                        QImage imagePixmap;
                        imagePixmap.load(":/new/prefix1/Images/imageName.extension");
                        m_imageLabel->setPixmap(QPixmap::fromImage(imagePixmap));
                        

                        Or

                        Only QPixmap

                        m_imageLabel = new QLabel;
                        QPixmap imagePixmap;
                        imagePixmap.load(":/new/prefix1/Images/imageName.extension");
                        m_imageLabel->setPixmap(imagePixmap);
                        

                        imageName.extension can be image.png, image.jpeg.

                        Pradeep Kumar
                        Qt,QML Developer

                        P 1 Reply Last reply
                        2
                        • Pradeep KumarP Pradeep Kumar

                          If u are using QImage

                          m_imageLabel = new QLabel;
                          QImage imagePixmap;
                          imagePixmap.load(":/new/prefix1/Images/imageName.extension");
                          m_imageLabel->setPixmap(QPixmap::fromImage(imagePixmap));
                          

                          Or

                          Only QPixmap

                          m_imageLabel = new QLabel;
                          QPixmap imagePixmap;
                          imagePixmap.load(":/new/prefix1/Images/imageName.extension");
                          m_imageLabel->setPixmap(imagePixmap);
                          

                          imageName.extension can be image.png, image.jpeg.

                          P Offline
                          P Offline
                          Payx
                          wrote on last edited by
                          #34

                          @Pradeep-Kumar said in How to display a picture:

                          If u are using QImage

                          m_imageLabel = new QLabel;
                          QImage imagePixmap;
                          imagePixmap.load(":/new/prefix1/Images/imageName.extension");
                          m_imageLabel->setPixmap(QPixmap::fromImage(imagePixmap));
                          

                          Or

                          Only QPixmap

                          m_imageLabel = new QLabel;
                          QPixmap imagePixmap;
                          imagePixmap.load(":/new/prefix1/Images/imageName.extension");
                          m_imageLabel->setPixmap(imagePixmap);
                          

                          imageName.extension can be image.png, image.jpeg.

                          U didnt read the thread i think :-).
                          But thx

                          @mrjj Lol no problem :-)
                          Thanks it works i will create an other thread for an other question after

                          Pradeep KumarP 1 Reply Last reply
                          2
                          • Pradeep KumarP Offline
                            Pradeep KumarP Offline
                            Pradeep Kumar
                            wrote on last edited by
                            #35

                            Thread says how to display a picture

                            @Payx
                            Is this the thing?.
                            correct me if i was wrong.

                            Pradeep Kumar
                            Qt,QML Developer

                            P 1 Reply Last reply
                            1
                            • Pradeep KumarP Pradeep Kumar

                              Thread says how to display a picture

                              @Payx
                              Is this the thing?.
                              correct me if i was wrong.

                              P Offline
                              P Offline
                              Payx
                              wrote on last edited by
                              #36

                              @Pradeep-Kumar said in How to display a picture:

                              Thread says how to display a picture

                              @Payx
                              Is this the thing?.
                              correct me if i was wrong.

                              wow u just answer the question after 5 guys answer me.

                              1 Reply Last reply
                              1
                              • Pradeep KumarP Offline
                                Pradeep KumarP Offline
                                Pradeep Kumar
                                wrote on last edited by
                                #37

                                Hmmmmmmmmmm was toooooooooooo late.:)))

                                Pradeep Kumar
                                Qt,QML Developer

                                1 Reply Last reply
                                1
                                • P Payx

                                  @Pradeep-Kumar said in How to display a picture:

                                  If u are using QImage

                                  m_imageLabel = new QLabel;
                                  QImage imagePixmap;
                                  imagePixmap.load(":/new/prefix1/Images/imageName.extension");
                                  m_imageLabel->setPixmap(QPixmap::fromImage(imagePixmap));
                                  

                                  Or

                                  Only QPixmap

                                  m_imageLabel = new QLabel;
                                  QPixmap imagePixmap;
                                  imagePixmap.load(":/new/prefix1/Images/imageName.extension");
                                  m_imageLabel->setPixmap(imagePixmap);
                                  

                                  imageName.extension can be image.png, image.jpeg.

                                  U didnt read the thread i think :-).
                                  But thx

                                  @mrjj Lol no problem :-)
                                  Thanks it works i will create an other thread for an other question after

                                  Pradeep KumarP Offline
                                  Pradeep KumarP Offline
                                  Pradeep Kumar
                                  wrote on last edited by
                                  #38

                                  Thanks it works i will create an other thread for an other question after

                                  If it is working can u mark thread has solved, so it will be useful in future.
                                  Cheers.:)))))))

                                  Thanks,

                                  Pradeep Kumar
                                  Qt,QML Developer

                                  1 Reply Last reply
                                  1
                                  • P Offline
                                    P Offline
                                    Payx
                                    wrote on last edited by
                                    #39

                                    How can i do that ?

                                    1 Reply Last reply
                                    0
                                    • Pradeep KumarP Offline
                                      Pradeep KumarP Offline
                                      Pradeep Kumar
                                      wrote on last edited by Pradeep Kumar
                                      #40

                                      u have already marked as solved for this thread.

                                      Pradeep Kumar
                                      Qt,QML Developer

                                      1 Reply Last reply
                                      0
                                      • Pradeep KumarP Offline
                                        Pradeep KumarP Offline
                                        Pradeep Kumar
                                        wrote on last edited by
                                        #41

                                        Anyways in the right bottom of the topic u will see topic button and u see mark as solved under the topic button, click on it.

                                        :)

                                        Thanks.

                                        Pradeep Kumar
                                        Qt,QML Developer

                                        1 Reply Last reply
                                        1
                                        • S Offline
                                          S Offline
                                          spice
                                          wrote on last edited by
                                          #42

                                          The link address has expired
                                          Please pay attention to select the example corresponding to your current qt version in the upper right corner
                                          https://code.qt.io/cgit/qt/qtbase.git/tree/examples/widgets/widgets/imageviewer?h=5.15

                                          1 Reply Last reply
                                          0

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved