Python氣泡提示與標(biāo)簽的實(shí)現(xiàn)
來(lái)更新Gui教程了?。?!
今天我們講氣泡提示,就是這個(gè)樣子的。
那個(gè)‘這是一個(gè)氣泡提示’就是氣泡提示,朋友們肯定有些會(huì)‘哦,原來(lái)就是這個(gè)呀?!?,也有些朋友會(huì)說(shuō):“這不是電腦自帶的嗎”。這個(gè)問(wèn)題在我剛學(xué)編程的時(shí)候,也是這樣。比如我一開(kāi)始先是學(xué)Scratch,然后目標(biāo)是編一個(gè)植物大戰(zhàn)僵尸。當(dāng)我去編的時(shí)候(沒(méi)學(xué)過(guò),因?yàn)楹芎?jiǎn)單,一看就懂。),以為太陽(yáng)從天上掉下來(lái)的效果是編的時(shí)候不用編,而是以為自帶的。結(jié)果還要涉及到什么隨機(jī)數(shù),好了,說(shuō)遠(yuǎn)了…
代碼上?。?!
import sysfrom PyQt5.QtWidgets import QWidget, QToolTip, QApplicationfrom PyQt5.QtGui import QFontclass Example(QWidget): def __init__(self): super().__init__() self.settings() def settings(self): self.setGeometry(300, 300, 400, 300) self.setWindowTitle(’啥都行’) self.setToolTip(’氣泡提示’) #氣泡提示 QToolTip.setFont(QFont(’microsoft Yahei’, 10)) #字體格式 self.show()if __name__ == ’__main__’: app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
很明顯,我們用setToolTip創(chuàng)建了一個(gè)氣泡提示。然后這里要注意,這里是self.setToolTip,就是說(shuō)在整個(gè)界面都可顯示氣泡,而不是在某個(gè)字上或按鈕上(后面講)然后就是字體。設(shè)置字體的兩個(gè)參數(shù)分別是字體名字與大小。
剛剛提到了標(biāo)簽,那我們也來(lái)講一講,至于按鈕,就有點(diǎn)復(fù)雜,所以下一期講吧。
代碼呢?滾出來(lái)!
import sysfrom PyQt5.QtWidgets import QWidget, QLabel, QApplicationfrom PyQt5.QtGui import QPixmapclass Example(QWidget): def __init__(self): super().__init__() self.settings() def settings(self): self.setGeometry(300, 300, 300, 200) self.setWindowTitle(’啥都行’) self.a = QLabel(self) self.a.setToolTip(’氣泡提示’) self.a.setText(’關(guān)注一下吧!’) self.a.move(50,50) print(self.a.text()) self.show()if __name__ == ’__main__’: app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
大家注意了,這里的氣泡提示就只能在‘關(guān)注一下吧’標(biāo)簽上看到了,這個(gè)標(biāo)簽以外的地方都無(wú)法看到這個(gè)氣泡提示??赡苡行┡笥巡恢涝趺纯礆馀萏崾?,就是將光標(biāo)放在氣泡提示的地方,等一會(huì)兒就出現(xiàn)了。
這個(gè)QLabel就是標(biāo)簽,也可以設(shè)置字體。只不過(guò)我沒(méi)展示出來(lái)。self.a.text()是獲取self.a的文本,如果你只是打印self.a,那么結(jié)果就是:<PyQt5.QtWidgets.QLabel object at 0x053A4300>這個(gè)0x053A4300是程序每次執(zhí)行分配給變量或者其它的什么的一個(gè)ID,ID相當(dāng)于每個(gè)人的身份證。
如果你要查看self.a的類型,那么就是這個(gè):<class ‘PyQt5.QtWidgets.QLabel’>
大家一定要注意,這個(gè)非常重要!??!標(biāo)簽的內(nèi)容只能是字符串?。?!,大家應(yīng)該知道我以前的博客除了QQ之外沒(méi)加粗過(guò)字體。為什么我這么重視,大家看個(gè)例子:
import sysfrom PyQt5.QtWidgets import QWidget, QLabel, QApplication,QPushButtonclass Example(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): self.setGeometry(300, 300, 300, 200) self.setWindowTitle(’QLabel標(biāo)簽’) self.a = QLabel(self) self.a.setText(’變數(shù)字’) self.a.move(50,50) self.b = QPushButton(’確定’,self) self.b.clicked.connect(self.buttonClicked) self.b.move(100,100) self.show() def buttonClicked(self): self.a.setText(’123’)if __name__ == ’__main__’: app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
這里面涉及到按鈕,大家不用管,反正下一期會(huì)講。大概的目標(biāo)就是按一下按鈕,標(biāo)簽會(huì)變成另外的內(nèi)容。
如果你用的是pycharm,那么按一下按鈕就會(huì)這樣:
如果你運(yùn)行成功的話,應(yīng)該是0,但是這里是1。但是又不報(bào)錯(cuò)。
如果用的是Sublime Text3:
你就根本不知道有什么錯(cuò)。所以在這里我和大家一再?gòu)?qiáng)調(diào):標(biāo)簽的內(nèi)容只能是字符串?。?!
接著說(shuō)。這個(gè)move就是將對(duì)象移動(dòng)到界面的某個(gè)位置,以像素為單位。標(biāo)簽也可以是gif或者圖片。gif的話就是用QMovie,這個(gè)大家自行搜索,因?yàn)槲覒械萌ニ岩粋€(gè)gif動(dòng)圖。所以我只和大家說(shuō)圖片。
import sysfrom PyQt5.QtWidgets import QWidget, QLabel, QApplicationfrom PyQt5.QtGui import QPixmapclass Example(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): self.setGeometry(300, 300, 300, 200) self.setWindowTitle(’QLabel標(biāo)簽’) self.a = QLabel(self) self.a.setToolTip(’氣泡提示’) self.a.move(50,50) print(self.a.text()) b = QLabel(self) b.setPixmap(QPixmap(’圖片名字’)) b.move(100,100) self.show()if __name__ == ’__main__’: app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
到此這篇關(guān)于Python氣泡提示與標(biāo)簽的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Python氣泡標(biāo)簽內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. html中的form不提交(排除)某些input 原創(chuàng)2. 淺談CSS不規(guī)則邊框的生成方案3. ASP中解決“對(duì)象關(guān)閉時(shí),不允許操作?!钡脑幃悊?wèn)題……4. asp在iis7報(bào)錯(cuò)行號(hào)不準(zhǔn)問(wèn)題的解決方法5. jsp實(shí)現(xiàn)簡(jiǎn)單用戶7天內(nèi)免登錄6. 詳解盒子端CSS動(dòng)畫(huà)性能提升7. 5個(gè)HTML5的常用本地存儲(chǔ)方式詳解與介紹8. CSS可以做的幾個(gè)令你嘆為觀止的實(shí)例分享9. 基于javaweb+jsp實(shí)現(xiàn)學(xué)生宿舍管理系統(tǒng)10. CSS百分比padding制作圖片自適應(yīng)布局
