
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、pyqt5與html數(shù)據(jù)交互原理部分核心代碼解析分享類我們先來看看分享類。class myshared(qwidget):finish = pyqtsignal(list)def _init_(self):super()._init_()def pyqt52webvalue(self):return "666"def web2pyqt5value(self, str):info = str.split()fullinfo = "用戶名:,密碼:".format(info0, info1)qmessagebrm
2、ation(self, "從web頁面?zhèn)髦档絧yqt5", fullinfo)self.finish.emit(info)value = pyqtproperty(str, fget=pyqt52webvalue, fset=web2pyqt5value)在這個分享類里面我們比以前多了一個新的學(xué)問點:pyqtproperty。用法pyqtproperty()函數(shù)定義新的pyqt屬性。 它的用法方式與標(biāo)準(zhǔn)的python property()函數(shù)相同。 實際上,以這種方式定義的pyqt屬性也表現(xiàn)為python屬性。那么問題又來了,什么是python proper
3、ty()函數(shù)?按照python的協(xié)助文檔上的介紹,它的徹低形式是這樣的:class property(fget=none, fset=none, fdel=none, doc=none)作用是返回python的某一個屬性。fget是獵取屬性值的函數(shù)。 fset是用于設(shè)置屬性值的函數(shù)。 fdel是用于刪除屬性值的函數(shù)。 doc為該屬性創(chuàng)建了一個docstring。典型使用是定義可被管理的屬性x:class c:def _init_(self):self._x = nonedef getx(self):return self._xdef setx(self, value):self._x = va
4、luedef delx(self):del self._xx = property(getx, setx, delx, "i&39;m the &39;x&39; property.")假如c是c的實例,c.x將調(diào)用getter,c.x = value將調(diào)用setter和del c.x將調(diào)用delx。假如給定,doc將是property屬性的docstring。 否則,該屬性將復(fù)制fget的docstring(假如存在)。這使得用法property()作為裝點器可以輕松創(chuàng)建只讀屬性:class parrot:def _init_(se
5、lf):self._voltage = 100000email?protecteddef voltage(self):"""得到當(dāng)前voltage的值"""return self._voltageproperty裝點器將voltage()辦法轉(zhuǎn)換為具有相同名稱的只讀屬性。屬性對象具有可用作裝點器的getter,setter和deleter辦法,這些辦法創(chuàng)建屬性的副本,并將相應(yīng)的拜訪函數(shù)設(shè)置為裝點函數(shù)。舉例如下:class c:def _init_(self):self._x = none
6、email?protecteddef x(self):"""我是&39;x&39;屬性"""return self._xemail?protecteddef x(self, value):self._x = valueemail?protecteddef x(self):del self._x此代碼與第一個示例徹低等效:x = property(getx, setx, delx, "i&39;m the &39;x&39; pro
7、perty.")請務(wù)必為其他函數(shù)指定與原始屬性相同的名稱(在本例中為x)。返回的屬性對象還具有與構(gòu)造函數(shù)參數(shù)對應(yīng)的屬性fget,fset和fdel。在pyqt5中,它是這么用的:pyqt5.qtcore.pyqtproperty(type, fget=none, fset=none, freset=none, fdel=none, doc=none, designable=true, scriptable=true, stored=true, user=false, constant=false, final=false, notify=none, revision=0)感覺
8、很復(fù)雜!創(chuàng)建一個既作為python屬性又作為pyqt屬性的屬性。參數(shù):type - 屬性的類型。 它是python類型對象或字符串。fget - 用于獵取屬性值的,可選。fset - 用于設(shè)置屬性值的,可選。freset - 用于將屬性值重置為其默認(rèn)值的,可選。fdel - 用于刪除屬性的,可選。doc - 屬性的docstring,可選。designable - 設(shè)置qt designable標(biāo)記,可選。scriptable - 設(shè)置qt scriptable標(biāo)記,可選。stored - 設(shè)置qt stored標(biāo)記,可選。user - 設(shè)置qt user標(biāo)記,可選。constant - 設(shè)置
9、qt constant標(biāo)記,可選。final - 設(shè)置qt final標(biāo)記,可選。notify - 未綁定通知信號,可選。revision - 導(dǎo)出到qml的修訂版。返回類型:屬性對象。也可以用法pyqtproperty()作為裝點器,辦法與標(biāo)準(zhǔn)python property()函數(shù)相同。 以下示例顯示如何用法getter和setter定義int屬性:from pyqt5.qtcore import qobject, pyqtpropertyclass foo(qobject):def _init_(self):qobject._init_(self)self._total = 0email?
10、protected(int)def total(self):return self._totalemail?protecteddef total(self, value):self._total = value好了,現(xiàn)在我們回過頭來再看下我們自己定義的分享類。def pyqt52webvalue(self):return "666"寫上,但是后面我們沒用。def web2pyqt5value(self, str):info = str.split()fullinfo = "用戶名:,密碼:".format(info0, info1)qmessagebrmation(self, "從web頁面?zhèn)髦档絧yqt5", fullinfo)self.finish.emit(info)當(dāng)我們得到從web頁面?zhèn)鱽碇?/p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2025學(xué)年高中化學(xué)第二章化學(xué)反應(yīng)與能量第二節(jié)化學(xué)能與電能1化學(xué)能與電能的相互轉(zhuǎn)化課時訓(xùn)練含解析新人教版必修2
- 2024-2025學(xué)年高中語文2雷雨習(xí)題含解析新人教版必修4
- 2024-2025學(xué)年高中生物第1章無菌操作技術(shù)實踐第3節(jié)植物組織培養(yǎng)技術(shù)學(xué)案蘇教版選修1
- 2025年中國絕緣鞋行業(yè)發(fā)展趨勢及投資前景預(yù)測報告
- 2025年鑰匙扣民族陶娃行業(yè)深度研究分析報告
- 2025年中國LED照明市場運行態(tài)勢研究報告
- 乙基麥芽酚項目可行性研究報告
- 2024年事故報告、調(diào)查處理和統(tǒng)計制度(三)
- 2025年雙向紗門行業(yè)深度研究分析報告
- 2025年中國良性前列腺增生藥物行業(yè)發(fā)展前景及投資戰(zhàn)略咨詢報告
- ××管業(yè)分銷市場操作方案
- 《ISO 41001-2018 設(shè)施管理- 管理體系 要求及使用指南》專業(yè)解讀與應(yīng)用指導(dǎo)材料之15:“7支持-7.6 組織知識”(雷澤佳編制-2024)
- 2024年建設(shè)工程質(zhì)量檢測人員-建設(shè)工程質(zhì)量檢測人員(主體結(jié)構(gòu)工程)考試近5年真題集錦(頻考類試題)帶答案
- 《向量共線定理》同步課件
- 小學(xué)數(shù)學(xué)學(xué)習(xí)經(jīng)驗交流課件
- 2024年第二批政府專職消防員招錄報名表
- 注塑模具基礎(chǔ)知識
- 2024年單招考試題
- 三年級數(shù)學(xué)下冊期末測試卷及答案【可打印】
- 蘇教版小學(xué)語文上冊教學(xué)研究論文
- 片狀鋅粉行業(yè)分析!中國片狀鋅粉行業(yè)市場發(fā)展前景研究報告(2024版)
評論
0/150
提交評論