- 博客(131)
- 资源 (22)
- 收藏
- 关注
原创 1.3 Springboot企业项目实战,Spring MVC启航
在创建第一个Springboot项目时,我们添加了spring-boot-starter-web,默认集成了Spring MVC框架。Spring MVC是Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,是当今业界最主流的 Web 开发框架。在 Spring MVC 框架中,Controller 替换 Servlet 来担负控制器的职责,用于接收请求,调用相应的 Model ,在完成业务处理之后,它会调用相应的 View 并对处理结果进行视图渲染,最终客户端得到响应信息。在
2021-10-21 18:53:48
859
原创 1.2 Springboot企业项目实战,项目文件详解
在项目中,src/main/java目录下,用来存放java源代码,resources目录下的static用来存放css、js、图片等静态文件,templates用于存放html等模板文件。项目中,核心文件只有3个,分别是HelloApplication.java、application.properties和pom.xml,下面分别介绍它们。1. HelloApplication.javaSpringBoot程序启动入口一个是SpringApplication.run,一个是@SpringBo
2021-10-13 11:28:35
543
原创 1.1 Springboot,直挂云帆济沧海
用Eclipse开发Springboot项目,会被人家说老了;用VScode,又会被说太穷了,好吧,年轻又多金的你,肯定是买IntelliJ IDEA专业版的。至于破解,那是不可能的,是的,绝对不可能的。那就用IntelliJ IDEA创建一个Springboot项目吧。1. 创建Springboot项目打开IntelliJ IDEA,选择【New Project】,进入创建新项目的窗口。选择创建Springboot项目的插件Spring Initializr创建Springboot项目,.
2021-10-12 22:02:06
431
原创 1.0 Springboot到底好在哪,为啥这么多人喜欢?
如今,开发Java Web系统,如果还不采用Springboot的话,要不是系统老了,要不就是人老了,毕竟它要比以前的应用方式,方便n倍。SpringBoot基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。假大空的话,我就不说了,下面用Spring+SpringMVC+MyBatis+Mysql开发Web系统为例,讲解一下以前和现在有什么不同。1. 集成开发包以前:需要去Spring官网下载开发包,需
2021-10-10 19:33:49
716
3
原创 第3天 | 3天搞定Pyecharts数据分析,漂亮图表
Pyecharts实现了满足各种需求,涵盖了各行业的图表,类型多样、丰富多彩,它实现的图表,支持动态效果,支持动态展示数据,鼠标悬停在图上,即可显示数值和标签等内容。常见的图表类型如下表所示: 图表类型 描述 Bar 柱状图/条形图; Bar3D 3D 柱状图; Boxplot 箱形图; EffectScatter
2021-10-07 12:00:00
714
原创 第2天 | 3天搞定Pyecharts数据分析,主题样式
Pyecharts提供10多种不同的风格,也提供了便捷的定制主题的方法。主题选择由InitOpts类指定,可选值在from pyecharts.globals import ThemeType中,使用方法如下:Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT))ThemeType类中,有LIGHT、DARK、WHITE和CHALK等等可选,具体效果,需要你自行测试。如果内置的主题不能满足你的需求,那你可以到Echarts官网进行构建,自定义自己
2021-10-06 12:00:00
841
原创 第28天 | 28天学会PyQt5,高级控件之QTreeWidget
树形结构是通过QTreeWidget和QTreeWidgetItem类实现的,其中QTreeWidgetItem类实现了节点的添加。QTreeWidget是一个层次的嵌套结构。一个树状结构的外层和内层有相似的结构,常用于表示有一个上层多个下层的数据结构。在结构中,树根结点没有前驱结点,其余每个结点有且只有一个前驱结点。叶子结点没有后续结点,其余每个结点的后续节点数可以是一个也可以是多个,常用的方法如下表所示: 方法 描述 setColumnWidth(
2021-10-04 17:15:00
1261
原创 第27天 | 28天学会PyQt5,高级控件之QListWidget
列表框架还有一个QListWidget,它是QListView的子类,与QListView不同的是,它已经建立了一个数据储存模型QListWidgetItem,直接调用addItem()函数就可以添加条目(Item),常用的事件类型有: 事件类型 描述 currentItemChanged 列表中的条目发生改变时,触发此事件; itemClicked 点击列表中的条目时,触发此事件。
2021-10-04 12:00:00
1580
原创 第26天 | 28天学会PyQt5,高级控件之QListView
列表组件QListView是从QAbstractItemView 派生的类,实现了QAbstractItemView类定义的接口,是Model/View架构中的视图类之一,是模型/视图框架的一部分,提供基于模型的的列表模式或图标模式视图。它将存储在模型中的项显示为简单的没有父子层次的列表或图标集合,视图不显示水平或垂直标题,常用的方法如下表所示: 方法 描述 setModel() 用来设置View所关联的Model,可以使用Pytho
2021-10-03 17:15:00
1494
原创 第25天 | 28天学会PyQt5,高级控件之QTableWidget
表格控件,还有一个QTableWidget,它继承自QTableView。QTableWidget和QTableView的主要区别是QTableView可以使用自定义的数据模型来显示内容,而QTableWidget只能使用标准的数据模型,并且其单元格数据是通过QTableWidgetItem对象来实现的。通常情况下,使用QTableWidget就能够满足我们的大多数要求。它常用的方法,除了用QTableView的方法外,还可用下表所示的方法: 方法 描述
2021-10-03 12:00:00
1384
原创 第24天 | 28天学会PyQt5,高级控件之QTableView
高级组件不是说这个组件有多”高级”的意思,而是表示功能强大的意思。如要实现一个功能完整的表格功能,可能需要花上好几天,编写好多代码才能实现,而直接调用wx.Grid组件,三两下就搞定了,所以说这个组件很高级。PyQt5常用的高级组件有表格视图控件QTableView和QTableWidget、列表视图QListView和QListWidget,树状结构QTreeWidget和标签视图QTabWidget。表格视图控件QTableView需要和数据模型配套使用。表格的数据模型,需要填上每一行每一列
2021-10-02 17:15:00
4072
原创 第23天 | 28天学会PyQt5,多行文本框
多行文本输入框QTextEdit可以显示多行文本内容,当文本内容超出控件显示范围时,可以显示水平个垂直滚动条,还可以用来显示HTML文档。多行文本框常用事件类型如下表所示。 方法 描述 setPlainText() 设置多行文本框的文本内容 toPlainText() 返回多行文本框的文本内容 setHtml() 设置多行文本框的文本内容为HTML
2021-10-02 12:00:00
3620
原创 第22天 | 28天学会PyQt5,单行文本框
文本框QLineEdit是表单域中最基本的元素,基于文本框的应用有很多,它提供了编辑文本的功能,自带了撤销、重做、剪切、粘贴、拖拽等功能。通过设置,可以置为密码输入框。QLineEdit常用的事件类型如下表所示。 事件类型 描述 selectionChanged 只要选择改变了,就会触发事件 textChanged 修改文本内容时,触发事件 editingFinished
2021-10-01 17:15:00
1023
原创 第21天 | 28天学会PyQt5,步进器
步进控件QSpinBox,也叫微调控制器,允许用户选择一个整数值。通过单击向上向下或者按键盘上的上下键来增加减少当前显示的值,当然,也运行用户直接用键盘输入值。在默认情况下,它的取值范围是(0-99),每次改变的步长是1。步进控件QSpinBox的常用事件类型为vlaueChanged,在值发生改变时触发事件,它常用的方法如下表所示。 方法 描述 setMinimum() 设置步进器的下界 setMaximum
2021-10-01 12:00:00
413
原创 第20天 | 28天学会PyQt5,滑块控
滑块QSlider控件提供一个垂直或者水平的滑动条,滑动条是一个用于控制有界值典型的控件,它允许用户沿水平或者垂直方向在某一范围内移动滑块,并将滑块所在的位置转换为一个合法范围内的整数值,有时候这中方式比输入数字更加自然。QSlider控件的常用事件类型有如下几种。 事件类型 描述 vlaueChanged 滑块的值发生改变时触发事件,此类型是最常用的 sliderPressed 按下滑块
2021-09-30 12:00:00
777
原创 第1天 | 3天搞定Pyecharts数据分析,语法篇
ECharts,是遵循Apache-2.0开源协议,可免费商用的商业级数据图表,是百度使用纯Javascript实现的一个图表库。它可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器,底层依赖轻量级的Canvas类库ZRender,提供直观,生动,可交互,可高度个性化定制的数据可视化图表。ECharts涵盖了各行业的图表,满足各种需求,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。Python开发者,对其进行了封装,以此来满足Python程序员开发图表的需求,并命名为Pyechart
2021-09-29 17:18:00
1594
1
原创 PyQt5集成Seaborn
数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。数据分析是为了提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。学了数据分析技术Seaborn,又学了桌面应用框架PyQt5的你,开发一个销售数据分析小系统,帮助企业领导高效决策,提高经营效率,发现业务机会点,让企业获得持续竞争的优势,将不再是梦。梦的起航,从功能界面开始。1. 功能概述数据分析,按区域和年份组合条件进行数据查询,区域选择”所有”(默认)时
2021-09-29 12:42:55
896
原创 第19天 | 28天学会PyQt5,列表选择,你选西施还是杨玉环?
列表框QComboBox是一个集按钮和下拉选项于一体的控件,是提供给用户选择的一种机制。选项被放置在一个下拉列表中,绑定的事件,在用户选择之后触发。列表框比单选按钮占据较少的空间,当选项的数目相对少的时候,列表框是一个好的选择。QComboBox控件常用的事件类型如下表所示: 事件类型 描述 Activated 用户选中一个下拉选项时触发事件 currentIndexChanged 下拉选
2021-09-29 12:00:00
662
原创 第18天 | 28天学会PyQt5,单选按钮
单选按钮QRadioButton是一种允许用户从几个选项中选择其一的窗口组件。与复选框不同,单选按钮是显式地成组配置,并且只能选择其中一个选项。当选择了新的选项时,上次的选择就还原了。多个QRadioButton是一个按钮组合,如果多个独占的按钮组合,需要放在QButtonGroup中。单选按钮QRadioButton的常用方法如下表所示: 方法 描述 setCheckanle() 设置按钮是否已经被选中,可以改变单选按钮的选中状态,
2021-09-28 11:33:52
1405
原创 第17天 | 28天学会PyQt5,复选框
复选框QCheckBox是一个带有文本标签的开关按钮,一样继承自QAbstracButton类。复选框通常成组的方式显示,但是每个复选框的开关状态是相互独立的。当你有一个或多个需要明确的开关状态的选项时,可以使用复选框。复选框常用的事件类型toggled,在标记状态发生改变时触发事件。复选框QCheckBox的常用方法如下表所示: 方法 描述 setChecked() 调整复选框的状态,设置为True表示选中,False表示取消选
2021-09-27 12:01:52
1134
原创 第16天 | 28天学会PyQt5,按钮
widget的动态组件有10多个,有按钮QPushButton、单选按钮QRadioButton和列表框QComboBox等等。如果只是一味地念”名词”,实在太无趣了,能用代码+注释的方式讲解组件,那才有点意思。按钮QPushButton继承自QAbstractButton类,其形状是长方形,文本标题或图标可以显示在长方形上。它也是一种命令按钮,可以单击该按钮执行一些命令或者响应一些事件。QAbstractButton类为抽象类,不能实例化,必须由其他的按钮类(如QPushButton)继承之后,实
2021-09-26 17:12:38
1237
原创 第15天 | 28天学会PyQt5,进度条
进度条控件QProgressBar用于向用户提供操作进度的指示,用户可以从进度条看出程序是否正在运行。在PyQt5工具包中,QProgressBar提供了一个水平或垂直进度条。可以为进度条设置取值范围,最小值默认为0,最大值默认为99。它的常用方法如下: 方法 描述 setRange() 设置进度条的取值范围(最小值和最大值); setMinimum() 调整进度条的最小值;
2021-09-26 12:20:17
1236
2
原创 第14天 | 28天学会PyQt5,静态组件之图片
图片控件QPixmap可以作为一个QPainterDevice对象,可以加载到一个控件中,通常是标签或者按钮,用于在标签或按钮上显示图像,支持的文件类型有BMP、GIF和JPG等。它的常用方法如下: 方法 描述 copy() 从QRect对象复制到QPixmap对象 fromImage() 将QImage对象转换为QPixmap对象 grabWidget()
2021-09-25 19:00:10
877
原创 第13天 | 28天学会PyQt5,静态组件之标签
组件(widget)是应用程序最基本的单元,常见的组件有标签、文本、按钮、选择框、滑动器等。PyQt5的大多数组件继承于QWidget类,所以大多数组件具有选择单击clicked事件等类型和绑定事件的功能。程序员们常将和用户交互的组件称作动态组件,而将主要起到显示作用的组件称为静态组件,静态组件尽管也可以用connect()方法绑定事件,但不会起到作用。静态组件没有很多个,有用于显示文本的QLabel,有用于展示图片的QPixmap,还有进度条QProgressBar。当我们在处理一个耗时较长的任务
2021-09-25 12:06:21
780
1
原创 第12天 | 28天学会PyQt5,表单布局
表单布局QFormLayout,就是实现表单方式的布局,表单是提示用户进行交互的一种模式,主要有两列组成,第一列用于显示信息,给用户提示,一般叫做标签域,第二列需要用户进行选择或输入,一般叫做输入域。QFormLayout常用方法如下: 方法 描述 addRow(self, QWidget, QWidget) 用于添加包含标签和输入字段的行; addRow(self, str, QWidget)
2021-09-24 13:29:47
999
原创 第11天 | 28天学会PyQt5,网格布局
网格布局QGridLayout即由行列组成的二维表格的布局方式。在QGridLayout中,可以定义表格的行列数目,以及单元格之间的横竖间距,还可以通过对所添加的控件的行数与列数的跨越,来实现一个部件占据多个单元格。QGridLayout对象的setSpacing(self, spacing: int)方法,可设置控件在水平和垂直方向的间隔,spacing为整数, 默认值为10。addWidget(QWidget widget,int row,int col,int alignment=0)方法用于
2021-09-23 12:07:14
1482
原创 第10天 | 28天学会PyQt5,箱子布局
菜单栏和工具栏,在大多数编程语言中,都会提供对应的布局,而工作区域的,需要用布局管理器。当然,在PyQt5中,大多数组件可用x、y轴坐标进行定位摆放,只是那样要费时费力,还会遇到调整窗口大小时,组件的尺寸和位置不会随之改变的问题,会遇到不同系统上,应用界面不一致的问题。为此,PyQt5提供了布局管理器QLayout,QLayout本身不是一个容器或一个窗口部件,它是一个屏幕布局的算法。真正实现布局的是QLayout的子类,有按行或列布局的箱子布局QHBoxLayout和QVBoxLayout,有按网格布
2021-09-22 13:17:05
467
原创 第9天 | 28天学会PyQt5,数据传递事件
在开发桌面应用程序时,经常需要在两个界面之间做数据的传递,在PyQt5中,你可以用pyqtSignal进行实现。通过pyqtSignal可以声明不带参数和带参数的实例对象,带参数的实例对象可以整型、字符型、列表和字典等数据类型。pyqtSignal对象用connect()方法绑定多个处理函数,在emit()方法发送数据时,绑定的函数都会收到。了解过设计模式的朋友应该知道,这是观察者模式的应用。记得将connect()方法放在窗口显示方法show()之前,否则不起作用。让打开的窗口处于模态,需要在sh
2021-09-21 17:52:22
1013
原创 第8天 | 28天学会PyQt5,窗口事件
在QWidget和QMainWindow窗口中,提供了鼠标和键盘的处理函数,你需要用到时,进行重载即可。事件重载方法里的e代表了事件对象,mouseMoveEvent(self,e)里e表示QMouseEvent的对象,用对象的x()和y()方法,可以得到鼠标的x和y坐标点。更多可重载的事件方法,可以查看QWidget的源代码。除了之前讲过的重载contextMenuEvent(self, e)方法,实现上下文菜单外,常用的方法还有如下几个: 方法 描述
2021-09-21 09:08:04
1001
原创 第7天 | 28天学会PyQt5,控件事件
事件,就是程序在运行中发生的事儿,桌面应用软件都是事件驱动的。事件可以是用户的操作,如鼠标点击或按键按下,也可以由系统产生,如定时关机。事件会触发相应的行为,即事件函数。在事件模型中,有三个角色,分别是事件源、事件和事件目标。事件源就是发生了状态改变的对象,事件是这个对象状态的改变撞他改变的内容,事件目标是事件想作用的目标。事件源绑定事件处理函数,然后作用于事件目标身上。事件源是状态发生变化的对象。它会生成事件。事件(对象)封装了事件源中状态的变动。事件接收者是要通知的对象。事件源对象将事件处理的工
2021-09-20 20:11:33
1331
原创 第6天 | 28天学会PyQt5,文本输入对话框
对话框是一种特殊的视窗, 用来在用户界面中向用户显示信息,或者在需要的时候获得用户的输入响应。显示信息已经说过,接下来说一下文本输入对话框QInputDialog。QInputDialog控件是一个标准对话框,由一个文本框和两个按钮(ok和cancel)组成,当用户单击ok或按下键盘enter键后,在父窗口可以收集通过QInputDialog控件输入的信息,QInputDialog控件是QDialog标准对话框的一部分。在QInpuTDialog控件中可以输入数字(整型或浮点型),字符串或列表中的选
2021-09-20 12:22:14
2142
1
原创 第5天 | 28天学会PyQt5,对话框
QDialog是对话框窗口的基类。对话框主要用来执行短期任务,或者与用户进行互动。对话框里没有菜单栏、工具栏和状态栏等。在开发中,常用消息对话框QMessageBox给用户展示消息,消息框常常包括标题、内容和图标。提示框、问答框、警告框和错误框,分别用QMessageBox对象的information()、question()、warning()和critical()方法显示,它们最大的不同点,在于提示图标。程序清单: dialog.pyimport sysfrom PyQt5.QtWidget
2021-09-19 19:24:05
539
原创 第4天 | 28天学会PyQt5,主窗口
QMainWindow继承自QWidget类,QWidget类中的大部分成员函数,QMainWindow都可以使用。QMainWindow窗口可以包含菜单栏、工具栏、状态栏、标题栏等,常用于主窗口,它是顶层窗口,有自己的布局管理器,不能使用setLayout对其进行设置。菜单栏创建,用self.menuBar()获取菜单栏(QMenuBar)对象,通过addMenu()方法添加菜单项并返回QMenu或QAction对象,QMenu的addMenu()方法用于添加子菜单,addSeparator()方法添
2021-09-19 13:23:01
818
原创 第3天 | 28天学会PyQt5,基本窗口
在PyQt5中,窗口类型有QWidget、QMainWindow和QDialog三类,它们都是用来创建窗口的,可以直接实例化使用,也可以继承后使用。如果确定是主窗口,就使用QMainWindow类,如果是对话框,就使用QDialog类,如果不确定,否则使用QWidget类。基本窗口QWidget类是UI对象的基类,窗口和控件(如按钮)都直接或间接继承自QWidget类。窗口是指程序的整体界面,可以包含标题栏、菜单栏、工具栏、关闭按钮、最小化按钮等。一个程序可以有多个窗口,一个窗口可以有多个控件。
2021-09-19 08:06:23
640
1
原创 第2天 | 28天学会PyQt5,用面向对象,让窗口居中
相较于面向过程编程,面向对象编程,更具重用性、可扩展性和维护性。PyQt5应用程序,用面向对象的实现如下。程序清单: pyqt5_obj.pyimport sysfrom PyQt5.QtWidgets import QApplication, QWidget, QDesktopWidget# 继承QWidgetclass Widget(QWidget): def __init__(self): super().__init__() self.in
2021-09-19 08:04:29
797
原创 第1天 | 28天学会PyQt5,开发四部曲
PyQt5是基于图形程序框架Qt5的Python语言实现,由一组Python模块构成。允许Python程序员很方便地创建完整的、功能健全的用户界面,是Digia的一套Qt5与python绑定的应用框架。它是一个跨平台的开发库,可以运行在大多数操作系统中,包含Windows、macOS和Ubuntu等。PyQt5采用双重许可模式,你可以在GPL和社区授权之间选择。在Windows、macOS和Ubuntu系统中安装PyQt5,用pip3 install PyQt5==5.15.4命令即可,不指定版本号时,
2021-09-17 12:53:28
1682
原创 第25天 | 25天学会wxPython,集成Seaborn
数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。数据分析是为了提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。学了数据分析技术Seaborn,又学了桌面应用框架wxPython的你,开发一个销售数据分析小系统,帮助企业领导高效决策,提高经营效率,发现业务机会点,让企业获得持续竞争的优势,将不再是梦。梦的起航,从功能界面开始。25.1 功能概述数据分析,按区域和年份组合条件进行数据查询,区域选择”所有”
2021-09-15 20:55:54
275
原创 第24天 | 25天学会wxPython,自定义对话框
在一个应用程序中,有时候为了实现一些特定的功能,需要设计自定义对话框。自定义对话框的设计一般从wx.Dialog中继承,并且可以同窗口(Frame)一样的设计方式。在Frame中可以用的组件,在自定义对话框中也是可以使用的。程序清单:dialog.pyimport wximport wx.gridclass DialogControl(wx.Dialog): account = None password = None def __init__(self, *ar
2021-09-15 20:49:31
419
原创 第23天 | 25天学会wxPython,消息对话框
对话窗口或对话框是大多数应用软件中不可缺少的一部分,它是执行命令过程中人机对话的一种界面。对话框是一个独立的窗口,起到了与用户进行交互的作用,用户可以在对话框中输入信息、阅读提示和设置选项等操作。你可以使用预定义的对话框,如消息对话框框wx.MessageBox、字体对话框wx.FontDialog和颜色对话框wx.ColourDialog,也可以通过继承wx.Dialog,创建自己的自定义对话框。23.1 消息对话框消息对话框wx.MessageBox用来给用户展示消息,它的语法为:Messa
2021-09-14 13:04:45
849
3
原创 第22天 | 25天学会wxPython,高级组件之树状结构
树状结构(wx.TreeCtrl)是一个层次的嵌套结构。一个树状结构的外层和内层有相似的结构,常用于表示有一个上层多个下层的数据结构。在结构中,树根结点没有前驱结点,其余每个结点有且只有一个前驱结点。叶子结点没有后续结点,其余每个结点的后续节点数可以是一个也可以是多个。程序清单:tree.pyimport wximport wx.grid# 继承Frameclass TreeControl(wx.Frame): def __init__(self, *args, **kwa
2021-09-13 12:22:14
487
watchos-swiftui-tutorials
2023-06-09
beginning-iphone-development-swiftui-6th
2023-06-09
apple-game-frameworks-technologies.rar
2023-05-03
animating-swiftui-applications-visually.rar
2023-05-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人