python利用PyQt5和QTDesginer开发GUI应用(一)、环境准备及demo

PyQt5 Demo 记事本(实现大部分功能) 实现了大部分记事本的功能,替换功能未能实现,还有主题样式、状态栏等,今后再加吧! 学习总结一,直接上代码~ Demo 记事本 登录主窗口(.ui转为.py):untitled.py # -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'I:\1实验室\其他\QTtest\untitle... 阅读详情

1.python环境准备(推荐使用anaconda) 以及pycharm应用安装:

略

2.安装PyQt5和PyQt5-tools

如果安装不成功可以多试几次,还不行的话可以修改pip为豆瓣的源:http://pypi.douban.com/simple,再不行的话就到pypi上下载whl包使用命令行安装即可: pip.exe install xxx.whl

我这里的版本分别是PyQt5==5.13.0和pyqt5-tools5.13.0.1.5

3.PyCharm配置外部工具:

在File-->Settings-->Tools-->External Tools中新增:

QTDesginer:用来画出GUI界面。

如图配置即可,很多人找不到designer.exe在哪里还要单独去下载,其实在装完pyqt5-tools这个包之后里面已经带了。到当前python环境的$PYTHON_ENV\site-packages\pyqt5_tools\Qt\bin\designer.exe即可找到

PyUIC:用来将designer画的.ui格式的文件转为.py文件

-m PyQt5.uic.pyuic $FileName$ -o ..\show_ui\$FileNameWithoutExtension$.py

配好保存之后,在Tools-->External Tools里就可以看到新增的两个外部工具了:

4.画UI

我们先来画界面,打开QTDesginer:

新建选择Widget,然后从左边选择需要的组件拖拽进新建的画板里,在右边可以设置名字、样式、默认值等等。

这里只画好了界面,下面配置触发函数:

点击这里的编辑信号/槽:

选择你认为会在做出改变或点击事件的时候应该触发效果的组件拖拽出一根线:

接下来会出现这个窗口:

点击编辑,新增一个函数,这里的函数名就是在后面实现功能的时候会用到的,我这里新增一个submit_btn()。

左边选择事件类型,我这里选择当点击click()即可触发,触发右边的我们定义的函数submit_btn()。

左边的事件类型在不同的组件里是不一样的,这个可以参考官方文档,有很多也很详细。

用同样的方式新增一个clear_btn()

好了先保存my_csdn.ui文件。

5.UI转为python脚本

右键my_csdn.ui选择External Tools->PyUIC即可通过.ui文件生成.py文件,生成的文件就在上面配置PyUIC外部工具的时候给的路径:

打开看看生成的py文件:

可以看到生成的文件里都是self.组件名.属性/函数

6.实现UI里的功能

我们新增一个py文件用来实现对应的功能:

将刚才生成的my_csdn里的Ui_Form引进来,然后定义class实现对应的函数即可。

简单修改一下:

7.源码

代码:

my_csdn_show_ui.py

import sys
from PyQt5 import QtWidgets,QtCore
from PyQt5.QtCore import QDate,QDateTime,QTime,Qt
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from my_csdn import Ui_Form

class mywindow(QtWidgets.QWidget, Ui_Form):
    txt=''
    def __init__(self):
        super(mywindow, self).__init__()
        self.setupUi(self)
        self.setWindowTitle('优快云_Demo')
    def submit_btn(self):
        self.txt += self.lineEdit.text()+'\n' #获取输入的内容
        self.plainTextEdit.setPlainText(self.txt)#将文本框里的值追加在下面的文本区内

    def clear_btn(self):
        self.txt=''
        self.plainTextEdit.setPlainText(self.txt)#清除文本区内容


if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    ui = mywindow()
    ui.show()
    sys.exit(app.exec_())

my_csdn.py [用.ui生成的]

from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_Form(object):
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(447, 423)
        self.lineEdit = QtWidgets.QLineEdit(Form)
        self.lineEdit.setGeometry(QtCore.QRect(60, 60, 121, 31))
        self.lineEdit.setObjectName("lineEdit")
        self.label = QtWidgets.QLabel(Form)
        self.label.setGeometry(QtCore.QRect(10, 60, 71, 31))
        self.label.setObjectName("label")
        self.pushButton_submit = QtWidgets.QPushButton(Form)
        self.pushButton_submit.setGeometry(QtCore.QRect(190, 60, 81, 31))
        self.pushButton_submit.setObjectName("pushButton_submit")
        self.plainTextEdit = QtWidgets.QPlainTextEdit(Form)
        self.plainTextEdit.setEnabled(True)
        self.plainTextEdit.setGeometry(QtCore.QRect(10, 110, 381, 131))
        font = QtGui.QFont()
        font.setPointSize(12)
        self.plainTextEdit.setFont(font)
        self.plainTextEdit.setReadOnly(True)
        self.plainTextEdit.setObjectName("plainTextEdit")
        self.pushButton_clear = QtWidgets.QPushButton(Form)
        self.pushButton_clear.setGeometry(QtCore.QRect(290, 60, 81, 31))
        self.pushButton_clear.setObjectName("pushButton_clear")

        self.retranslateUi(Form)
        self.pushButton_submit.clicked.connect(Form.submit_btn)
        self.pushButton_clear.clicked.connect(Form.clear_btn)
        QtCore.QMetaObject.connectSlotsByName(Form)

    def retranslateUi(self, Form):
        _translate = QtCore.QCoreApplication.translate
        Form.setWindowTitle(_translate("Form", "Form"))
        self.label.setText(_translate("Form", "请输入:"))
        self.pushButton_submit.setText(_translate("Form", "submit"))
        self.pushButton_clear.setText(_translate("Form", "clear"))

 

PyQt5配合Qt-Designer实现GUI 如题,本文主要内容围绕 Python 实现 GUI 展开, 阅读详情

相关推荐

github上关于PyQt5的各种各样的demo,方便学习

非常好的github上关于pyqt5的示例代码,只要你pip insatall pyqt5之后,就能直接运行

(一)PyQt5系列教程:使用PyQt5创建一个简单的demo

(一)PyQt5系列教程:使用PyQt5创建一个简单的demo 一、环境配置: 1. python下载(建议python3.8版本以上)和安装 2. pycharm下载和安装 3. PyQr5下载和安装 4. 在pycharm中添加对应的PyQt5的包 5.设置PyQt5的设计器,将PyQt5文件转换成python: 复制designer.exe的路径: 然后打开setting,配置外部工具:(可以在pycharm直接调用软件外的工具) Program:是刚才复制的路径; Arguement填如下面

K_AAbb的博客 7414

python GUI库图形界面开发之PyQt5美化窗体与控件(异形窗体)实例

在默认情况下,我们使用PyQt5创建出来的窗口和部件都是默认的样式,虽然谈不上很丑,但是也毫无美感可言。其实,在PyQt5中,我们可以有较高的自由度来自定义窗口和各种小部件的样式,通过自定义这些样式,以达到美化图形界面的目的。 本篇文章中,我们就通过一个实际的例子,使用QSS和PyQt5的配置属性,实现图形用户界面的美化工作。 首先上效果图: 一、对界面进行布局和组件的布置 在图像界面编程中,一个好的布局有助于全局把控界面的形态,而在PyQt5中,有多种布局的方式供我们选择,比较常用的布局有以下几种: 表单布局:QFormLayout 网格布局:QGridLayout 水平排列布局:QHB

pyqt5 基础通用demo

首先是pyqt最基础开发环境 python2 pip install python-qt5 python3 pip install PyQt5 安装成功后试用下以下demo # coding = utf-8 from PyQt5 import QtCore,QtGui,QtWidgets import sys class MainUi(QtWidgets.QMainWindow): def __init__(self): super(MainUi,self)._

文选的blog 1733

jmeter小白下载安装步骤

本文仅仅简单介绍了jmeter工具的下载安装,以及基础的操作步骤。

昔年@曦的博客 3494

xenomai内核解析--嵌入式实时linux概述

Linux系统作为一个GPOS(通用操作系统)发展至今已经非常成熟可靠了,并且由于遵循GPL协议,开放所有系统源代码,非常易于裁剪。更重要的是,与其他开源的GPOS或RTOS相比,Linux系统支持多种处理器、开发板,提供多种软件开发工具,同时Linux系统对网络和图形界面的支持非常出色。显然,选择Linux操作系统在产品的开发周期和成本控制方面都有巨大优势。 虽然Linux系统功能强大、实用性强...

wsg1100 3700

pyqt5文档安装 ubuntu_python利用PyQt5和QTDesginer开发GUI应用(一)、环境准备及demo

1.python环境准备(推荐使用anaconda) 以及pycharm应用安装:略2.安装PyQt5和PyQt5-tools如果安装不成功可以多试几次,还不行的话可以修改pip为豆瓣的源:http://pypi.douban.com/simple,再不行的话就到pypi上下载whl包使用命令行安装即可:pip.exe install xxx.whl我这里的版本分别是PyQt5==5....

weixin_30990711的博客 284

二叉树随机漫步

元旦快乐! 学习到中本聪bitcoin的文章的calculation部分的时候,出现了binomial random walk,不是很明白什么是random walk。发现这个文章写的很好:https://blog.youkuaiyun.com/fireguard/article/details/16111603 随机漫步,也叫随机游走,最早是物理学中做"布朗运动"的微观粒子的运动形态来形成的一个模型,布朗运...

gjq5464的博客 1737

python利用PyQt5和QTDesginer开发GUI应用(二)、股票查询工具

python应用GUI开发系列: python利用PyQt5和QTDesginer开发GUI应用(一)、环境准备及demo ------------------------------------------------------------------------------------------------------------------- 这里使用tushare实时采集财经类信...

王义凯 的博客 2481

自监督学习与上下文赌博机融合:视觉决策中的协同优化与实战指南

在机器学习领域,自监督学习(Self-Supervised Learning)通过设计前置任务从无标注数据中学习通用表征,已成为解决标注数据稀缺问题的关键技术。其核心原理是利用数据自身的结构生成监督信号,训练编码器提取鲁棒特征。上下文赌博机(Contextual Bandits)作为强化学习的简化分支,专注于在给定上下文信息下做出单步最优决策,平衡探索与利用,广泛应用于推荐系统、广告投放等场景。将两者结合,构建端到端的协同训练框架,能让视觉表征的优化直接服务于最终的决策目标,同时利用自监督任务作为正则化项提

weixin_33721344的博客 520

华为防火墙NAT避坑指南:当双ISP出口遇到服务器发布,这些细节不注意会翻车

本文深入解析华为防火墙在双ISP出口环境下服务器发布的实战配置,重点探讨no-reverse参数对Server-Map表的影响、源进源出功能的实现及线路切换时的会话保持问题。通过策略路由和智能选路技术,确保HTTP/FTP服务在多运营商链路中的高可用性,避免路径不对称和NAT映射冲突等常见陷阱。

weixin_30897233的博客 550

python怎么使用qtdesigner_python的qt-designer教程/python怎么使用qtdesigner设计的ui

PyQt Designer设计出来的界面怎么和python 代码结合起来保存为.ui的文件后,可pyqt的文件里直接引用。具体实如果你是在win下装自带Pyqt的demo,参看下源码就可以,如果是Unix里,可以去官网下份单独的tar.gz的包,里面也有demo部分的源码uic.loadUi 方法可以导入ui文件但是我发现,在众多的PyQt demo里面只用到.ui 文件的例子只是占了一部分,并不...

weixin_39732249的博客 1534

【深度学习新浪潮】为什么OpenClaw这么吃token?

OpenClaw 高 Token 消耗的核心是 Agent 多轮思考、工具调用上下文累积,以及平台内置的模板/多模型协同开销;PD 分离在 OpenClaw 中可针对性解决长上下文 Prefill 阻塞、KV Cache 复用低效问题,是提升其推理效率的核心优化手段,主要落地在长上下文处理与生成阶段解耦、KV Cache 集中管理、动态资源调度三个方向。

专注:太空算力、AI infra、异构调度、大模型成本工程 421

PyQt5的安装与Designer的配置使用(实现一个入门Demo,图文详解)

PyQt5的安装与Designer的配置使用 文章目录PyQt5的安装与Designer的配置使用1 PyQt包安装2 Pycharm配置2.1 创建一个空的Project2.2 找到包的安装位置2.3 找到Qt Designer.exe的安装路径,配置Pycharm3 创建一个小案例Demo3.1 创建第一个视图3.2 生成界面代码3.3 代码编写 1 PyQt包安装 pip install PyQt5 -i http://mirrors.aliyun.com/pypi/simple pip instal

鹏啊鹏 4383

元学习与Transformer的结合:Meta-Transformer架构解析

我们生活在一个信息爆炸的时代,每天都会产生海量的数据。在深度学习领域,如何让模型更高效地学习、更快地适应新的任务,一直是科学家们努力的方向。元学习和Transformer都是深度学习中的重要概念,它们各自有着独特的优势。本文的目的就是深入剖析将元学习和Transformer结合起来的Meta - Transformer架构,探讨它的原理、应用以及未来发展。我们会从基础概念讲起,逐步深入到架构的各个方面,让大家对Meta - Transformer有一个全面的了解。

AI智能探索者的博客 1052

从零开始学Agent的搭建——多角色项目需求分析框架实战

场景一:电商促销需求——技术细节顾此失彼团队用单Agent分析一个"双11秒杀系统"的需求。Agent输出了完整的功能清单,但当我们拿着这份方案找架构师评审时,发现了致命问题:Agent完全没有考虑库存扣减的并发一致性、Redis与MySQL之间的数据同步延迟、以及超卖风险的控制策略。原因是单Agent在处理"业务理解"任务时,已经耗尽了它的"注意力预算",技术深度分析几乎为空。场景二:ERP集成需求——跨系统边界模糊。

软件行业技术文化交流。 536

PyQt5简介及demo

PyQt5说明   pyqt5是一套Python绑定Digia QT5应用的框架。它可用于Python 2和3。本教程使用Python 3。Qt库是最强大的GUI库之一。pyqt5的官方网站http://www.riverbankcomputing.co.uk/news。   pyqt5做为Python的一个模块,它有620多个类和6000个函数和方法。这是一个跨平台的工具包,它可以运行在所有...

weixin_30535913的博客 1881

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

pyqt5 demo

【代码】pyqt5 demo。

gRpc的博客 288

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

qt qss样式模板_实战PyQt5:112-开源QSS样式表qdartstyle

使用Python开发应用一个重要的优点是有丰富的第三方库,在开发过程中我们就不需要重复造轮子,而是应用好这些轮子,就可以事半功倍。下面介绍一个深色配置QSS库QDarkStyleSheet,使用它,在PyQt中,只需要简单的一个语句,就可以给用用实现炫酷的深色风格。QDarkStyleSheet简介QDarkStyleSheet是一个适用于Qt应用程序的最完整的深色样式表(Qt4,Qt5,PySi...

weixin_39831567的博客 3010

pyqtqss_PyQt5 - QSS(Qt Style Sheet)

[code]#这里MainWindow为实例化出的窗体名(实例名)qss_style = '''#pushButton_1,#pushButton_2,#pushButton_3,#pushButton_4,#pushButton_5,#pushButton_6{background-color:grey;border-radius:20px;#border:2px solid yellow;}....

weixin_29150151的博客 563

一款PyQt的美化模板——PyDracula

对于新手来说,从零开始用Qt设计一个美观的GUI是颇有难度的。Github上有许多开源的GUI模板供我们学习和参考。PyDracula是一款基于PySide6 和 Python 3.9开发的开源GUI模板。主题保存在不同的QSS文件当中。这一步可能很多人会遇到“代码无法生成”的问题。如果这个方法无效,可以尝试Scripts文件夹里面的"pyside6-uic.exe"

qq_63218152的博客 1万+

qt ui框架_5个开源Python GUI框架

您的Python程序需要图形用户界面吗?这里有五个工具可以帮助您构建一个。在Python中,开始GUI编程的步骤并不十分复杂,但是它们确实需要用户开始做出一些选择。由于Python是一种通用编程语言,在每个通用操作系统中都有解释器可用,因此它对于创建图形用户界面的选择是相当不可知的。幸运的是,有许多可供程序员使用的选项,它们希望为用户提供一种与用户的程序进行交互的简便方法。在各种平台上都存在针对多...

weixin_39678163的博客 1891

15 个 Python 开源项目,使用 PyQt 做小型桌面应用!

点击上方蓝色小字,关注“涛哥聊Python”重磅干货,第一时间送达来源:开源前哨【导语】:想制作属于自己的桌面应用程序吗?这有 15 个示例带你手把手入门。简介本次将介绍一个用 PyQt ...

涛哥聊Python 1万+

收藏的博客 -- Qt有关的GitHub/Gitee开源项目

收藏的博客 -- Qt有关的GitHub/Gitee开源项目 置顶 libaineu2004 2017-08-18 14:50...

呓语煮酒的博客 3500

Python pyqt5 爬虫采集demo play

class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(736, 474) self.centralwidget = QtWidgets.QWidget(MainW...

li947011039的博客 567

pyqt5 socke-tcp通信demo

代码: from PyQt5.QtWidgets import \ QWidget, QMainWindow, QAction, QVBoxLayout, QLineEdit, QPushButton, QTextEdit, QMessageBox, QApplication from PyQt5.QtGui import QTextCursor, QIcon from PyQt5.QtNetwork import QTcpSocket from PyQt5.QtCore import Qt .

baidu_41706898的博客 1079
上一篇: kafka管理监控系统 CMAK(yahoo的kafka-manager)部署及使用
下一篇: python利用PyQt5和QTDesginer开发GUI应用(二)、股票查询工具
王义凯_Rick
王义凯_Rick 领域专家: 大数据技术领域 领域专家: 大数据技术领域
博客等级 码龄14年 858粉丝 162原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王义凯_Rick

遇见即是缘,路过就给个评论吧~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值