生成二维码-Python带界面(FluentUI)

本文介绍了如何使用Python的Tkinter库结合PyQt5和Fluent-Widgets创建一个简单的二维码生成器,用户可以输入文本生成二维码,以及使用InfoBar显示生成结果。
摘要由CSDN通过智能技术生成

根据文字生成二维码

快捷生成二维码
通过输入任何内容,然后点击hello生成可以扫描二维码


pip install PyQt-Fluent-Widgets

pip install PyQt5

pip install "PyQt-Fluent-Widgets[full]" -i https://pypi.org/simple/
from tkinter import *
import qrcode
from PIL import Image,ImageTk

class Appwin(Frame):
    def __init__(self,master=None):
        Frame.__init__(self,master,width=300,height=400)
        self.pack()
        self.createWidgets()

    def createWidgets(self):
        self.nameInput = Entry(self)
        self.nameInput.pack()
        self.alertButton = Button(self,text="hello",command=self.genQrcode)
        self.alertButton.pack()
        self.label = Label(self)
        self.label.pack()

    def genQrcode(self):
        text = self.nameInput.get() or "没有输入"
        self.img = qrcode.make(text)
        self.tkImage = ImageTk.PhotoImage(image=self.img)
        self.label.config(image=self.tkImage)
        self.label.image=self.tkImage

root = Appwin()
root.master.title('二维码')
root.mainloop()

# coding:utf-8
import sys
from qfluentwidgets import InfoBar,InfoBarPosition,ComboBox, LineEdit,FluentIcon
from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QApplication, QWidget
from qfluentwidgets import  PushButton



class Demo(QWidget):

    def __init__(self):
        super().__init__()
        self.setWindowTitle('二维码生成器')
        self.resize(400,400)
        #
        self.name = PushButton('填入你需要的二维码扫出文字', self)
        self.name.move(80, 10)
        self.name.resize(250, 35)
        #
        self.UsernameLineEdit = LineEdit(self)  
        self.UsernameLineEdit.move(100, 100)
        self.UsernameLineEdit.resize(200, 350)
        self.UsernameLineEdit.setClearButtonEnabled(True)
        #
        self.buttonSuccess= PushButton('生成', self)
        self.buttonSuccess.clicked.connect(self.GenerateInfoBar)
        self.buttonSuccess.move(100, 250)
        self.buttonSuccess.resize(200, 33)


    def GenerateInfoBar(self): 
        username = self.UsernameLineEdit.text()
        print(username)
        # 执行SQL语句
        InfoBar.success(
            title='生成',
            content="生成",
            orient=Qt.Horizontal,
            isClosable=True,
            position=InfoBarPosition.TOP,
            duration=2000,
            parent=self
        )





if __name__ == '__main__':
    # enable dpi scale
    QApplication.setHighDpiScaleFactorRoundingPolicy(
        Qt.HighDpiScaleFactorRoundingPolicy.PassThrough)
    QApplication.setAttribute(Qt.AA_EnableHighDpiScaling)
    QApplication.setAttribute(Qt.AA_UseHighDpiPixmaps)

    app = QApplication(sys.argv)
    w = Demo()
    w.show()
    app.exec_()

更新时间:2024年1月20日

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值