Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Qt for Python
  4. show other program result in QWindow

show other program result in QWindow

Scheduled Pinned Locked Moved Unsolved Qt for Python
pyside2qt for python
13 Posts 6 Posters 1.7k Views 3 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.
  • D Offline
    D Offline
    daisyvish
    wrote on last edited by
    #1

    hi,
    As we know project in Qt can be written in C++.but if want after clicking a push button can it possible to get output from python program and show on QLabel .
    Actually i want to get resultant output from python code after clicking a button while our Qt project is in C++.
    for example if i am doing image differencing (program written in python )then output of two image difference should be appear on Qt gui

    1 Reply Last reply
    0
    • mrjjM Offline
      mrjjM Offline
      mrjj
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi and welcome to the forums
      You can use QProcess to run python scripts
      https://stackoverflow.com/questions/19185056/qprocess-not-executing-a-python-script

      But if you need to show the difference between 2 images, i think you will have to let the python
      save that to a file and then read in the c++ part.

      1 Reply Last reply
      4
      • D Offline
        D Offline
        daisyvish
        wrote on last edited by
        #3

        if we are taking path of image through FileDialog in Qt C++ gui ,then how can we get that image path to python program..

        mrjjM 1 Reply Last reply
        0
        • D daisyvish

          if we are taking path of image through FileDialog in Qt C++ gui ,then how can we get that image path to python program..

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

          @daisyvish
          With QProcess you can include arguments the the python app can read.
          https://stackoverflow.com/questions/47276571/qprocess-passing-arguments-to-a-python-script

          1 Reply Last reply
          4
          • D Offline
            D Offline
            daisyvish
            wrote on last edited by daisyvish
            #5

            @jsulm @mrjj @SGaist
            i have tried to run execute python program on button click but getting error ......
            Qt program:---

            QProcess p;
            QStringList params;
            params<<"C:/Users/user/Desktop/image/temp.py";
            p.start("C:/Users/user/anaconda3/python.exe",params);
            p.waitForFinished(-1);
            qDebug()<<"finished";
            QStringp_stdout=p.readAll();
            qDebug()<<p_stdout;
            QStringp_stderr=p.readAllStandardError();
            if(!p_stderr.isEmpty());
            qDebug()<<"Pythonerror:"<<p_stderr;
            temp.py:---(python programm)

            from PIL import Image
            import numpy as np
            def change(path1,path2):
            im1=Image.open(path1,"r")
            im2=Image.open(path2,"r")
            buffer1=np.asarray(im1)
            buffer2=np.asarray(im2)
            buffer3=buffer1-buffer2
            changed=Image.fromarray(buffer3)
            im1.show()
            im2.show()
            changed.show()
            changed.save(r"C:\Users\user\Desktop\image\changed.jpg")
            return(changed.show)

            change(r"C:\Users\user\Desktop\image\Vale.jpg",r"C:\Users\user\Desktop\image\Vale2.jpg")

            ERROR on QT:
            finished
            ""
            Python error: "Traceback (most recent call last):\r\n File "C:/Users/user/Desktop/image/temp.py", line 1, in <module>\r\n from PIL import Image\r\n File "C:\Users\user\anaconda3\lib\site-packages\PIL\Image.py", line 94, in <module>\r\n from . import _imaging as core\r\nImportError: DLL load failed while importing _imaging: The specified module could not be found.\r\n"

            Second approach in Qt:
            QStringprogram("C:/Users/user/anaconda3/python.exe");
            QStringListargs=QStringList()<<"C:/Users/user/Desktop/image/temp.py";
            intexitcode=QProcess::execute(program,args);
            #python program is same as temp.py

            Error (Qt):
            File "C:/Users/user/Desktop/image/temp.py", line 1, in <module>
            from PIL import Image
            File "C:\Users\user\anaconda3\lib\site-packages\PIL\Image.py", line 94, in <module>
            from . import _imaging as core
            ImportError: DLL load failed while importing _imaging: The specified module could not be found.

            jsulmJ 1 Reply Last reply
            0
            • D daisyvish

              @jsulm @mrjj @SGaist
              i have tried to run execute python program on button click but getting error ......
              Qt program:---

              QProcess p;
              QStringList params;
              params<<"C:/Users/user/Desktop/image/temp.py";
              p.start("C:/Users/user/anaconda3/python.exe",params);
              p.waitForFinished(-1);
              qDebug()<<"finished";
              QStringp_stdout=p.readAll();
              qDebug()<<p_stdout;
              QStringp_stderr=p.readAllStandardError();
              if(!p_stderr.isEmpty());
              qDebug()<<"Pythonerror:"<<p_stderr;
              temp.py:---(python programm)

              from PIL import Image
              import numpy as np
              def change(path1,path2):
              im1=Image.open(path1,"r")
              im2=Image.open(path2,"r")
              buffer1=np.asarray(im1)
              buffer2=np.asarray(im2)
              buffer3=buffer1-buffer2
              changed=Image.fromarray(buffer3)
              im1.show()
              im2.show()
              changed.show()
              changed.save(r"C:\Users\user\Desktop\image\changed.jpg")
              return(changed.show)

              change(r"C:\Users\user\Desktop\image\Vale.jpg",r"C:\Users\user\Desktop\image\Vale2.jpg")

              ERROR on QT:
              finished
              ""
              Python error: "Traceback (most recent call last):\r\n File "C:/Users/user/Desktop/image/temp.py", line 1, in <module>\r\n from PIL import Image\r\n File "C:\Users\user\anaconda3\lib\site-packages\PIL\Image.py", line 94, in <module>\r\n from . import _imaging as core\r\nImportError: DLL load failed while importing _imaging: The specified module could not be found.\r\n"

              Second approach in Qt:
              QStringprogram("C:/Users/user/anaconda3/python.exe");
              QStringListargs=QStringList()<<"C:/Users/user/Desktop/image/temp.py";
              intexitcode=QProcess::execute(program,args);
              #python program is same as temp.py

              Error (Qt):
              File "C:/Users/user/Desktop/image/temp.py", line 1, in <module>
              from PIL import Image
              File "C:\Users\user\anaconda3\lib\site-packages\PIL\Image.py", line 94, in <module>
              from . import _imaging as core
              ImportError: DLL load failed while importing _imaging: The specified module could not be found.

              jsulmJ Offline
              jsulmJ Offline
              jsulm
              Lifetime Qt Champion
              wrote on last edited by
              #6

              @daisyvish Does your script work if you run it manually?
              From what you posted the Python interpreter cannot find some modules.

              And please try to format your code properly to make it easier to read.

              https://forum.qt.io/topic/113070/qt-code-of-conduct

              1 Reply Last reply
              1
              • D Offline
                D Offline
                daisyvish
                wrote on last edited by daisyvish
                #7

                @jsulm
                yes my python code is running proprly .Even when i replace another program(i.e hello.py).That gave output without error on Qt itself.
                & when executing temp.py on spider(anaconda) shows the output and save in specified location.

                JonBJ 1 Reply Last reply
                0
                • D daisyvish

                  @jsulm
                  yes my python code is running proprly .Even when i replace another program(i.e hello.py).That gave output without error on Qt itself.
                  & when executing temp.py on spider(anaconda) shows the output and save in specified location.

                  JonBJ Offline
                  JonBJ Offline
                  JonB
                  wrote on last edited by
                  #8

                  @daisyvish
                  If you edit your post to include the code tags, like @jsulm said, I will have a look at it.....

                  1 Reply Last reply
                  0
                  • SGaistS Offline
                    SGaistS Offline
                    SGaist
                    Lifetime Qt Champion
                    wrote on last edited by
                    #9

                    Hi,

                    How are you calling your python script on the command line ?
                    Do you have any environment variable set that is different in Qt Creator ?

                    Interested in AI ? www.idiap.ch
                    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                    D 1 Reply Last reply
                    0
                    • D Offline
                      D Offline
                      daisyvish
                      wrote on last edited by
                      #10

                      @mrjj @jsulm @SGaist
                      I have posted the program please once check that if any correction reqiured .I used anaconda IDE (spyder) for python.

                      1 Reply Last reply
                      0
                      • SGaistS SGaist

                        Hi,

                        How are you calling your python script on the command line ?
                        Do you have any environment variable set that is different in Qt Creator ?

                        D Offline
                        D Offline
                        daisyvish
                        wrote on last edited by
                        #11

                        @SGaist i am trying to call python program from QT button..how to check environment variables for QT?

                        jsulmJ 1 Reply Last reply
                        0
                        • D daisyvish

                          @SGaist i am trying to call python program from QT button..how to check environment variables for QT?

                          jsulmJ Offline
                          jsulmJ Offline
                          jsulm
                          Lifetime Qt Champion
                          wrote on last edited by
                          #12

                          @daisyvish said in show other program result in QWindow:

                          how to check environment variables for QT?

                          You mean in "in QtCreator"? @SGaist did not ask about environment variables specific for Qt, but any variables which can influence Python.
                          Go to "Projects/YOUR_KIT/Run/Run Environment" and compare the environment variables there to what "set" outputs in cmd.exe

                          https://forum.qt.io/topic/113070/qt-code-of-conduct

                          1 Reply Last reply
                          0
                          • M Offline
                            M Offline
                            Muqadas noor
                            wrote on last edited by
                            #13

                            if you do this work,please also shared with me. I also need this

                            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