Михаиллл
МихаилллJuly 16, 2019, 4:29 a.m.

В QML не обновляется Image

Добрый день.
Делаю снимки с камеры в один и тот-же файл. Но при попытке загрузки этого файда в Image я получаю первоначальный файл (который был до фотографирования).
Возможно это из-за того, что картинка хранится в кеше.
Скажите пожалуйста, как загружать нынешний файл в Image?

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.

Do you like it? Share on social networks!

8
Evgenii Legotckoi
  • July 16, 2019, 4:30 a.m.

Добрый день. Прикладывайте код.

    Михаиллл
    • July 16, 2019, 4:56 a.m.

    Пробовал даже этот файл удалять , все равно такой глюк.
    Можно ли из с++ QImage передать в QML в Image?

    import QtQuick 2.12
    import QtQuick.Controls 2.12
    import QtMultimedia 5.12
    
    Item {
        width: 400
        height: 700
    
        property alias buttonPhoto: buttonPhoto
        property alias photoImage: photoImage
        property alias photoPreview: photoPreview
        property alias camera: camera
    
        Camera {
            id: camera
    
            imageProcessing.whiteBalanceMode: CameraImageProcessing.WhiteBalanceFlash
    
            exposure {
                exposureCompensation: -1.0
                exposureMode: Camera.ExposurePortrait
            }
    
            flash.mode: Camera.FlashRedEyeReduction
    
            imageCapture {
                id: imageCapture1
                onImageCaptured: {
                    photoPreview.source = preview  // Show the preview in an Image
                }
                onImageSaved: {
                    photoImage.source = "file:" + appCore.getDirApp() +  "/IMG_00000001.jpg"
                    appCore.closeFile(appCore.getDirApp() +  "/IMG_00000001.jpg")
                }
            }
        }
    
        VideoOutput {
            anchors.bottomMargin: 331
            source: camera
            anchors.fill: parent
            focus : visible // to receive focus and capture key events when visible
            autoOrientation: true
        }
    
        Image {
            id: photoPreview
        }
    
        Image {
            id: photoImage
            x: 21
            y: 433
            width: 219
            height: 215
            fillMode: Image.PreserveAspectFit
            source: "qrc:/Images/Images/6.png"
    
        }
    
        Button {
            id: buttonPhoto
            x: 264
            y: 507
            text: qsTr("Photo")
            onClicked: {
                imageCapture1.capture()
            }
        }
    }
    
      R
      • July 16, 2019, 5:01 a.m.

      Image
      cache : bool

      Specifies whether the image should be cached. The default value is true. Setting cache to false is useful when dealing with large images, to make sure that they aren't cached at the expense of small 'ui element' images.

        Михаиллл
        • July 16, 2019, 5:32 a.m.

        Сделал так, но беда осталась:

            Image {
                id: photoImage
                x: 21
                y: 433
                width: 219
                height: 215
                fillMode: Image.PreserveAspectFit
                cache: false
                source: "qrc:/Images/Images/6.png"
        
            }
        
          R
          • July 16, 2019, 5:39 a.m.

          а так є вивід при оновленні картинки?

          onSourceChanged: {
              console.log("test set new source")
          }
          
            Михаиллл
            • July 16, 2019, 6:05 a.m.
            console.log("cache" + photoImage.cache)
            

            возвращает "cachefalse".
            Можно ли из с++ QImage передать в QML в Image?

              Михаиллл
              • July 16, 2019, 6:22 a.m.
              • The answer was marked as a solution.

              Вот так перевожу QImage в QByteArray

              QString AppCore::getImage(QString addressFile)
              {
                  QImage myImage(addressFile);
              
                  QByteArray bArray;
                  QBuffer buffer(&bArray);
                  buffer.open(QIODevice::WriteOnly);
                  myImage.save(&buffer, "JPEG");
              
                  QString image("data:image/jpg;base64,");
                  image.append(QString::fromLatin1(bArray.toBase64().data()));
              
                  return image;
              }
              

              Скажите пожалуйста , как теперь в QML задать QByteArray как картинку

                Михаиллл
                • July 16, 2019, 6:26 a.m.

                Вот так работает

                photoImage.source = appCore.getImage(appCore.getDirApp() +  "/IMG_00000001.jpg")
                

                  Comments

                  Only authorized users can post comments.
                  Please, Log in or Sign up
                  AD

                  C ++ - Test 004. Pointers, Arrays and Loops

                  • Result:50points,
                  • Rating points-4
                  m

                  C ++ - Test 004. Pointers, Arrays and Loops

                  • Result:80points,
                  • Rating points4
                  m

                  C ++ - Test 004. Pointers, Arrays and Loops

                  • Result:20points,
                  • Rating points-10
                  Last comments
                  i
                  innorwallNov. 15, 2024, 10:27 a.m.
                  Release of C++/Qt and QML application deployment utility CQtDeployer v1.4.0 (Binary Box) optionally substituted alkoxy, optionally substituted alkenyloxy, optionally substituted alkynyloxy, optionally substituted aryloxy, OCH, OC H, OC H, OC H, OC H, OC H, OC H, O C CH, OCH CH OH, O…
                  i
                  innorwallNov. 15, 2024, 5:26 a.m.
                  Qt/C++ - Lesson 031. QCustomPlot – The build of charts with time buy generic priligy We can just chat, and we will not lose too much time anyway
                  i
                  innorwallNov. 15, 2024, 3:03 a.m.
                  Qt/C++ - Lesson 060. Configuring the appearance of the application in runtime I didnt have an issue work colors priligy dapoxetine 60mg revia cost uk August 3, 2022 Reply
                  i
                  innorwallNov. 14, 2024, 8:07 p.m.
                  Circuit switching and packet data transmission networks Angioedema 1 priligy dapoxetine
                  i
                  innorwallNov. 14, 2024, 7:42 p.m.
                  How to Copy Files in Linux If only females relatives with DZ offspring were considered these percentages were 23 order priligy online uk
                  Now discuss on the forum
                  i
                  innorwallNov. 14, 2024, 11:39 a.m.
                  добавить qlineseries в функции priligy amazon canada 93 GREB1 protein GREB1 AB011147 6
                  i
                  innorwallNov. 11, 2024, 6:55 p.m.
                  Всё ещё разбираюсь с кешем. priligy walgreens levitra dulcolax carbs The third ring was found to be made up of ultra relativistic electrons, which are also present in both the outer and inner rings
                  9
                  9AnonimOct. 25, 2024, 4:10 p.m.
                  Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…

                  Follow us in social networks