關(guān)于pyqt5的一些坑與問題
- 設(shè)置pyqt5的背景圖片,可以設(shè)置一個(gè)lable控件,將控件至于底層,然后設(shè)置他的背景圖
- 注意路徑
- 解決代碼
'''自動(dòng)生成的會(huì)在1.jpg前面有東西,注意去掉'''
'''文件要在當(dāng)前的文件夾內(nèi)'''
self.lable.setStyleSheet("background-image: url(1.jpg);")
- 使用Qt Desiggnei 繪制界面后轉(zhuǎn)換成py代碼后 最好不要在生成的py頁面代碼添加 信號(hào)槽,到時(shí)候頁面改動(dòng)比較麻煩
- 轉(zhuǎn)換代碼 pyuic5 -o 【轉(zhuǎn)換后的.py】 【UI界面的.ui】
- 推薦的方法是創(chuàng)建一個(gè)py文件調(diào)用ui的py代碼
- 解決代碼
import ui #引入轉(zhuǎn)換好的ui文件
class MyMainForm(QMainWindow, ui.Ui_Dialog): #ui.Ui_Dialog中ui為文件名,后面為固定值
'''構(gòu)造函數(shù)'''
def __init__(self, parent=None):
super(MyMainForm, self).__init__(parent)
self.setupUi(self)
'''在下面補(bǔ)充運(yùn)行的信號(hào)槽'''
self.pushButton.clicked.connect(self.open_image) #打開圖片按鈕的信號(hào)槽
def open_image(self):
'''在此處寫邏輯代碼'''
'''運(yùn)行ui界面'''
if __name__ == '__main__':
'''固定的,PyQt5程序都需要QApplication對(duì)象。sys.argv是命令行參數(shù)列表,確保程序可以雙擊運(yùn)行'''
app = QApplication(sys.argv)
'''初始化'''
myWin = MyMainForm()
'''將窗口控件顯示在屏幕上'''
myWin.show()
'''程序運(yùn)行,sys.exit方法確保程序完整退出'''
sys.exit(app.exec_())
- lable控件顯示gif圖片
- 顯示代碼
'''實(shí)例化一個(gè)QMovie對(duì)象,傳入gif圖片地址'''
self.gif = QMovie(圖片路徑)
'''使用label的setMovie方法導(dǎo)入QMovie對(duì)象'''
self.label_3.setMovie(self.gif)
'''開始播放GIF動(dòng)畫'''
self.gif.start()
關(guān)于opencv的一些問題與坑
- 首先就是 用opencv讀取圖片的時(shí)候不能有中文路徑
- 如果路徑?jīng)]有錯(cuò),直接讀取文件后程序崩潰,卻沒有提示任何錯(cuò)誤請(qǐng)注意路徑中是否有中文
- 解決方法
'''使用np數(shù)組讀取圖片,并將圖片轉(zhuǎn)換為數(shù)組格式后再用cv2去解析圖片數(shù)據(jù)'''
img = cv2.imdecode(np.fromfile(self.file_name, dtype=np.uint8), 1)
- cv.imwrite 保存圖片路徑問題
- 相關(guān)代碼
'''file_Route 文件路徑,str_Img 圖片數(shù)據(jù),我用的時(shí)候是數(shù)組數(shù)據(jù)'''
cv.imwrite(file_Route, str_Img)
'''保存圖片在當(dāng)前項(xiàng)目文件夾內(nèi),1.jpg'''
cv.imwrite('1.jpg', str_Img)
'''保存圖片在當(dāng)前項(xiàng)目image文件夾內(nèi)的1.jpg圖片'''
'''注意是反斜杠'''
cv.imwrite('image/1.jpg', str_Img)
'''如果想正斜杠 單引號(hào)前面加r'''
cv.imwrite(r'image\1.jpg', str_Img)
文章來源地址http://www.zghlxwxcb.cn/news/detail-486461.html
文章來源:http://www.zghlxwxcb.cn/news/detail-486461.html
到了這里,關(guān)于python pyqt5與opencv 遇到的那些坑,pyqt5頁面搭建,設(shè)置pyqt5設(shè)置背景圖的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!