溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python氣泡提示與標(biāo)簽的實現(xiàn)

發(fā)布時間:2020-09-05 04:24:16 來源:腳本之家 閱讀:195 作者:波斯王 欄目:開發(fā)技術(shù)

來更新Gui教程了!??!

今天我們講氣泡提示,就是這個樣子的。

Python氣泡提示與標(biāo)簽的實現(xiàn)

那個‘這是一個氣泡提示'就是氣泡提示,朋友們肯定有些會‘哦,原來就是這個呀。',也有些朋友會說:“這不是電腦自帶的嗎”。這個問題在我剛學(xué)編程的時候,也是這樣。比如我一開始先是學(xué)Scratch,然后目標(biāo)是編一個植物大戰(zhàn)僵尸。當(dāng)我去編的時候(沒學(xué)過,因為很簡單,一看就懂。),以為太陽從天上掉下來的效果是編的時候不用編,而是以為自帶的。結(jié)果還要涉及到什么隨機數(shù),好了,說遠(yuǎn)了…

代碼上!??!

import sys
from PyQt5.QtWidgets import QWidget, QToolTip, QApplication
from PyQt5.QtGui import QFont

class 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)建了一個氣泡提示。然后這里要注意,這里是self.setToolTip,就是說在整個界面都可顯示氣泡,而不是在某個字上或按鈕上(后面講)然后就是字體。設(shè)置字體的兩個參數(shù)分別是字體名字與大小。

剛剛提到了標(biāo)簽,那我們也來講一講,至于按鈕,就有點復(fù)雜,所以下一期講吧。

代碼呢?滾出來!

import sys
from PyQt5.QtWidgets import QWidget, QLabel, QApplication
from PyQt5.QtGui import QPixmap
class 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)簽上看到了,這個標(biāo)簽以外的地方都無法看到這個氣泡提示。可能有些朋友不知道怎么看氣泡提示,就是將光標(biāo)放在氣泡提示的地方,等一會兒就出現(xiàn)了。

這個QLabel就是標(biāo)簽,也可以設(shè)置字體。只不過我沒展示出來。self.a.text()是獲取self.a的文本,如果你只是打印self.a,那么結(jié)果就是:
<PyQt5.QtWidgets.QLabel object at 0x053A4300>
這個0x053A4300是程序每次執(zhí)行分配給變量或者其它的什么的一個ID,ID相當(dāng)于每個人的身份證。

如果你要查看self.a的類型,那么就是這個:
<class ‘PyQt5.QtWidgets.QLabel'>

大家一定要注意,這個非常重要!??!
標(biāo)簽的內(nèi)容只能是字符串?。?!,大家應(yīng)該知道我以前的博客除了QQ之外沒加粗過字體。為什么我這么重視,大家看個例子:

import sys
from PyQt5.QtWidgets import QWidget, QLabel, QApplication,QPushButton
class 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_())

這里面涉及到按鈕,大家不用管,反正下一期會講。大概的目標(biāo)就是按一下按鈕,標(biāo)簽會變成另外的內(nèi)容。

如果你用的是pycharm,那么按一下按鈕就會這樣:

Python氣泡提示與標(biāo)簽的實現(xiàn)

如果你運行成功的話,應(yīng)該是0,但是這里是1。但是又不報錯。

如果用的是Sublime Text3:

Python氣泡提示與標(biāo)簽的實現(xiàn)

你就根本不知道有什么錯。所以在這里我和大家一再強調(diào):
標(biāo)簽的內(nèi)容只能是字符串?。?!

接著說。這個move就是將對象移動到界面的某個位置,以像素為單位。標(biāo)簽也可以是gif或者圖片。gif的話就是用QMovie,這個大家自行搜索,因為我懶得去搜一個gif動圖。所以我只和大家說圖片。

import sys
from PyQt5.QtWidgets import QWidget, QLabel, QApplication
from PyQt5.QtGui import QPixmap
class 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)簽的實現(xiàn)的文章就介紹到這了,更多相關(guān)Python氣泡標(biāo)簽內(nèi)容請搜索億速云以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持億速云!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI