Tags:
Forums: 

คือว่าผมจะทำโปรแกรมคล้ายๆ Photoshop คือเป็นการโหลดภาพขึ้นมาบน MDIArea ผ่าน Widget อันหนึ่ง

โดยผมเรียก MDI Subwindow จากฟังชั่น
{syntaxhighlighter brush: python} def bnLoadImageClicked(self):
imgFile = QtGui.QFileDialog.getOpenFileName(
self,
"Open Image File",
"D:/qtproject/ocr",
"ImCGraphicsViewage Files (*.jpg *.jpeg *.png)"
)
if imgFile :

        subwin = QtGui.QMdiSubWindow()
        curWidget = CImageWidget(subwin)
        subwin.setWidget(curWidget)
        subwin.setAttribute(QtCore.Qt.WA_DeleteOnClose)
        self.maMain.addSubWindow(subwin)     
        curWidget.show()
        curWidget.imgFile = imgFile
        curWidget.loadImage() {/syntaxhighlighter} 

ทีนี้ ฟังชั่น CImageWidget.loadImage() มีภาพขึ้นครับ
{syntaxhighlighter brush: python}
def loadImage(self):
self.gvImage.resetCachedContent()
#pixmap = QtGui.QPixmap(self.imgFile)
scene.addItem(QtGui.QGraphicsPixmapItem(pixmap))
self.gvImage.setScene(scene)
self.gvImage.show()
{/syntaxhighlighter}

แต่พอผมอยากให้โหลดภาพจาก PIL.Image กลับทำไม่ได้ครับ
{syntaxhighlighter brush: python}
def loadImage(self):
self.gvImage.resetCachedContent()
img = Image.open(str(self.imgFile))
scene = QtGui.QGraphicsScene(self.gvImage)
#scene.setSceneRect(self.gvImage.rect())
img2 = ImageQt.ImageQt(img)
img3 = QtGui.QImage(img2)
pixmap = QtGui.QPixmap.fromImage(img2)
#pixmap = QtGui.QPixmap(self.imgFile)
scene.addItem(QtGui.QGraphicsPixmapItem(pixmap))

    self.gvImage.setScene(scene)
    self.gvImage.show()

{/syntaxhighlighter}

ใครพอมีทางช่วยได้บ้างผมลองมาหลายวิธีแล้ว หรือต้องใช้ class อื่นๆ

Get latest news from Blognone
By: peacedev
AndroidUbuntuWindows
on 9 December 2015 - 16:29 #867183

Format ไม่รองรับหรือเปล่าครับ

ขึ้น Error ว่าไง