PyQt5 GUI生成隨機生成小工具

2022-03-17 06:47:09 字數 3722 閱讀 3503

自己修改了**:實現了自動生成ssn,手機號和姓名的功能

import

sysfrom pyqt5.qtgui import *

from pyqt5.qtwidgets import *

from pyqt5.qtcore import *

import

requests

from generator import

random_ssn,random_phone_number,random_name

class

mytest(qwidget):

def__init__(self, parent=none):

super(mytest, self).

__init__

(parent)

self.label =qlabel(self)

#self.label.settext("生成ssn")

#self.lineedit = qlineedit()

#self.lineedit.settext("")

self.button_ssn = self.models("

ssn"

,self.random_ssn)

self.button_pnumber = self.models("

手機號"

,self.random_number)

self.button_name = self.models("姓名"

,self.random_name)

self.text =qtextedit()

#訊號於槽

#布局巢狀

wlayout = qvboxlayout(self) #

全域性布局

hlayout = qhboxlayout() #

區域性布局

vlayout = qvboxlayout() #

區域性布局

hlayout.addwidget(self.label)

#hlayout.addwidget(self.lineedit)

hlayout.addwidget(self.button_ssn,stretch=10)

hlayout.addwidget(self.button_pnumber)

hlayout.addwidget(self.button_name)

vlayout.addwidget(self.text)

wlayout.addlayout(hlayout)

#將區域性布局加到全域性布局中

wlayout.addlayout(vlayout)

#新增標題

self.setwindowtitle("

生成ssn小工具")

#新增圖示

self.setwindowicon(qicon(r'

f:\github\buy12306\1.png'))

defmodels(self,name,func):

self.button =qpushbutton(name)

self.button.clicked.connect(func)

return

self.button

#槽函式

defrandom_ssn(self):

#url = self.lineedit.text()

#rep = requests.get(url)

#rep.encoding = 'utf-8'

#html = rep.text

for i in range(5):

ssn =random_ssn()

#將抓取的網頁原始碼加入到textedit中

#settext()這個函式不能實現

self.text.setplaintext(ssn)

defrandom_number(self):

phonenumber =random_phone_number()

self.text.setplaintext(phonenumber)

defrandom_name(self):

name =random_name()

self.text.setplaintext(name)

if__name__ =="

__main__":

demo =mytest()

demo.show()

exec())

import

sysfrom pyqt5.qtgui import *

from pyqt5.qtwidgets import *

from pyqt5.qtcore import *

import

requests

class

mytest(qwidget):

def__init__(self, parent=none):

super(mytest, self).

__init__

(parent)

self.label =qlabel(self)

self.label.settext("**

")self.lineedit =qlineedit()

#self.lineedit.settext("")

self.button = qpushbutton("開始"

) self.text =qtextedit()

#訊號於槽

self.button.clicked.connect(self.getstr)

#布局巢狀

wlayout = qvboxlayout(self) #

全域性布局

hlayout = qhboxlayout() #

區域性布局

vlayout = qvboxlayout() #

區域性布局

hlayout.addwidget(self.label)

hlayout.addwidget(self.lineedit)

hlayout.addwidget(self.button)

vlayout.addwidget(self.text)

wlayout.addlayout(hlayout)

#將區域性布局加到全域性布局中

wlayout.addlayout(vlayout)

#新增標題

self.setwindowtitle("

url抓取")

#新增圖示

self.setwindowicon(qicon('

1.ico'))

#槽函式

defgetstr(self):

url =self.lineedit.text()

rep =requests.get(url)

rep.encoding = '

utf-8

'html =rep.text

#將抓取的網頁原始碼加入到textedit中

#settext()這個函式不能實現

PyQt5 GUI程式設計 QCheckBox

qcheckbox類繼承自qabstractbutton類,它提供了一組帶文字標籤的核取方塊,使用者可以選擇多個選項。和qpushbutton一樣,核取方塊可以顯示文字或者圖示,其中文字可以通過建構函式或者settext 來設定,圖示可以通過seticon 來設定。在視覺上,qbuttongroup...

PyQt5GUI快速程式設計學習

第一部分 前面和gui程式設計沒有直接關係,看了一下 1 類程式設計 init 類的初始化函式。2 動態函式和偏函式。大概看了一下。以前沒怎麼接觸。還是比較有用的。第二部分 gui程式設計 1 訊號和槽 signals and slots 預設的訊號和槽。使用 python qt gui快速程式設計...

PyQt5 GUI程式設計 設定驗證器

在通常情況下,我們會對使用者的輸入做一些限制,可以通過驗證器來進行。常見的驗證器有 整型驗證器 浮點型驗證器及其他自定義驗證器。from pyqt5.qtgui import qintvalidator,qdoublevalidator,qregexpvalidator from pyqt5.qtc...