粉丝1331获赞2976

然后上一节课不是说想开发一个就是 ui 有 ui 界面的那个软件吗?这节课就先配置一下 ui 的环境啊。首先呢,呃,看一下这个环境配置。 第一步,我把那个什么下载的园给换成了清华园啊。呃,因为之前下载的慢,好像就是因为这个问题, 点击 for setting, 然后这个 project 啊这个,然后点击这个加号,点击这个 manage, 然后直接把这个这个这个就是网站换成清华园的, 直接搜一下 t y t h o 镜像员吧 啊,大家可以把那些网站随便换一个啊,我这里替换的是第一个啊,清华,然后替换完了, ok, 然后下载。呃,下载那什么呢?下载三个三个三个 在哪里 下载三个库啊?第一个 p y q t 五,大家这里直接就是搜 p y q t 五啊,直接点着下载就行了啊,因为你换成了清华的人应该可以直接下载成功啊。我我就我 模式下载成功了,然后下载它,然后再下载这个 p y q t 我 tos, 然后这个,还有这个啊,把这三个下载完了之后呢啊,我们就是试一试它的代码能不能用啊。 首先呢就是韩式百度啊,百度,我这里是直接搜的是 p y q t 啊, p y q t。 然后这里从零开始使用 p y q t。 呃,是哪个呢 啊?应该就是这个这个,然后首先他就是让你安装了,安装了这几个库啊,然后是他说安装好了之后试一下这个代码,看看能不能用。我这里已经复制过来了啊,右键啊,运行一下 啊,运行成这样呢,就说明可以使用啊,就证明你这个 p y q t 五啊。第一个是安装成功了,其他的 其他的安装成功你就在这里看啊,就是这里有没有那个什么呃,什么 tos 啊?刚刚安装的那些 p y q t 五,然后 d e s i g n e r 啊,就这三个啊, 嗯,有的话就是安装成功,没有的话安装失败,然后安装失败了,大家自己百度错的原因啊,是怎么回事?然后所有都安装成功了之后呢?需要配置一个。

好,今天主要介绍这个,呃, qt 的这个核心理念就是这个啊,你理解一下信号与槽, 那么我们今天的学习目标是这样的啊,首先呢,我们要了解 q t 的这个信号与槽的这个机制啊,啊,说 q t 也好,说 p i q t 也好,这个因为因为我们是呃拍送的一个啊绑定,所以那个说 p i q t 和 q t 都是一样的啊,我们以后为了简单就直接说 q t, 然后我们了解一下通过这个代码连接信号一槽的这个方法,嗯,因为这个我们编程的时候呢,可能不太可能 总是依赖于这个 id e, 那么总有一些呃代码需要我们自己手动去敲,所以我们也了解一下通过代码来连接这个信号与淘汰这个方法。然后我们要掌握使用艾瑞克啊,自动生成这个曹汉 的方法。嗯,然后呢,我们要理解这个 piqt, 他这个自动连接信号与槽的这个机制,也就是说我们使用艾瑞克生成这个槽函数,他是怎么与我们这个信号来自动连接的。最后呢,我们要嗯简单的介绍一下怎么编写这个槽函数, 那么我们先看一下这个啊,洗好水槽这个机制啊,简单说一下 qt 啊,它是由这个奇趣公司啊发明的这么一种啊, gui 的这个框架。 那么后来呢,这个奇迹公司被诺基亚收购了,然后诺基亚就成了这个 qt 的这个,嗯,大股东也也相当于是这个开发者,那么我们之前用了很多诺基亚的手机呢, 嗯,这个 gy 就是由 qt 提供的,然后在一二年的这个 qt 又卖给了另外一家公司叫 djita, 芬兰的一家 it 公司啊,这个 qt 的这个道路也比较曲折,但是索性是他这个一直在向前发展,并且也越来越好做的 啊。 qd 本身呢,他是对于这个事件响应是提供两种机制啊,一种就是跟大多数的 gui 一样,是一种底层的,就相对底层的一种机制,比如说一个按钮, 呃,鼠标点击和触摸屏触摸点击,或者是键盘选中它敲回车键点击这三种方式。呃,对于底层的这种事件想象是不一样的,就是三个函数去实现。嗯,那么当用户进行操作之后 啊,底层的这种 gy 的事件想要方式呢,会提供给这个,相当于是提供给编程人员非常详细的这个啊动作来源,比如说是用户鼠标点击或者是触摸屏点击,那么 qt 呢,在此基础之上,率先提出了一种高级的信号与槽的这个机制啊,因为这个 qt 觉得哈 啊,底层的那些按钮点击就是触发这个按钮按下的这些啊动作来源,比如说鼠标点击,或者是触摸屏触摸,或者是键盘操作, 他并没有什么太多的意义。那么 qt 提供了一种高级的香水槽这个机制,他叫屏蔽。底层的这个动作细节,相当于是不管是 哪一个动作来源点击了这个按钮,我最终的这个动作执行都是这个按钮被点击了,我的事件响应都是一样的。所以呢,知道这些底层细节,其实对于编程解决这个 想要动作这个工作来讲,并没有什么太大的帮助,所以 qt 呢,提供了呃,在事业上率先提出了一种这个信号有槽的这个响应机制 啊,这个信号有槽的想象机,就是说不管你是鼠标点击,还是键盘操作,还是触摸屏操作,还是各种动作来源,那么只要我这个按钮 被点击下去了,那么我就去执行他相应的这个槽函数去处理,因为你不管是如何动作了这个按钮,只要他被按下,那么就应该有一种相应的机制,有一种槽函数去处理他 去执行相应的动作。所以呢, qt 这种机制对于减少代码量来说是非常重要的,并且他也是一种,现在已经有很多那个机外框架采用了这种机制,那么 qt 呢? 它里边所有的空间都支持这个信号有槽的这个机制,并且有预定义的信号和槽。我们在上一节课里边呢,其实就已经使用了它预定义的信号和槽,比如说点击按钮之后,我把这个 可雷可这个信号就相当于是这个预定义的信号啊,连接到这个窗体的这个啊,最大化呀,最小化呀,关闭啊,这这些就相当于是槽函数。那么在上节课我们已经使用了他预定义的这个信号和槽。当这个 呃空线出发后,比如说我们点击拉鸟之后, qt 默认的机制是就直接发射出信号就不管了 啊,这个发射手信号这个表达意义非常形象啊,他就把这个信号丢出来,相当于就是说这个按钮被按下了,但是有没有动作,有没有相应的裁判术去处理这个信号, q t 是不管的 呃,这一部分因为是由编程人员来处理的,所以当空间出发之后, qt 直接就发射出信号,那么后续的投案处处理呀,这些是由编程人员来完成的,所以这个他是不管的 啊。那么信号呢,需要连接到槽才能得到处理,这就是我们刚才说的,如果光发射出一个信号没有像样的槽函数的话,那么这个信号是相当于是呃无效的信号,那么 点击按钮也不会有这个像样的操作。那么预定意的信号和槽呢,可以连接到一起啊,零代码实现一样的功能,一定的功能,就像我们上一节课做的操作一样啊,把这个信号和槽通过这个啊 gui 那这个 id 里面的编辑方式把它连连接到一起就可以用。我们上一节课也是没没有敲任何代码,就实现了这个窗体的这个改变效果,那么它可以实现一定的功能。但是呢,这个预定意义的信号和草毕竟是 功能有限,所以有些时候我们需要对他进行扩展,那么就就需要我们自己去变现代码实现,那么不同空间发出的这个信号类型可能不同,比如说嗯按钮的话,他只有这个点击, 点击的这个信号发射出来,那么他是不带有任何参数的。但是如果是这个呃书文本输入框,他可能发射出信号的时候就带一个这个呃自助串 类型的信号,那么比如说这个呃 q 带我就是那个小手轮,就是像我们那个旋转的那个旋钮一样的这个空间,他发出的信号呢,就可能带一个整形的这个参数类型,所以不同的空间发出的信号类型呢,可能是不同的 啊。此外值得值得一提的是我们这个 piqt 啊,他比私家加版的这个 qt 更加强大, 它其他在哪里呢?嗯, c 加加版的这个 qt, 它的槽函数必须是固定格式的。声明,也就是说你想用一个槽函数去响应这个信号,嗯,直接向上的动作,你必须这个槽函 用固定的格式去定义去实现啊。 pyqt 这个槽函数呢,还有一个特点就是他可以是任何可以调用的东西啊,自己定义的函数啊,或者是类里面的方法呀,都可以啊,没有特殊的格式要求,只要是可以调用的东西就可以。 嗯,那么我们接下来呢介绍一下这个通过代码连接信号语槽这个手动连接信号语槽的这个方法呢,有这么一下几种。 呃,这个方法是在我们啊生成了这个, 嗯, gui 主类里面的那个出手画函数里面去实现的,或者是自定义一个函数去实现这个信号一槽的这个连接啊, 等一下我们会详细的介绍一下这个啊,在哪一个部分输入这样的代码去连接他的信号一层。 那么我们先看一下这个手动连接小耳槽的方法。第一种就是赛尔夫,这个是当然是指自身了,这个啊面对象变成了赛奥夫啊,大家都知道啊,赛奥夫,大家可能这个第一个参数是 wedges, 就是这个空间,那么这个空间, 然后这个空间带有一个信号参数叫 signong signon 啊,括号里边这个引号就是指他具体的这个信号名称,比如说克雷克啊,或者是这个,呃, 拖拽啊,或者之类的,然后后面这翻个身就是我们 piqt 定义的这个槽函数, 那么这里边呢是我们啊,第一,第一种方式是我们自定义的这个啊函数去实现这个藏函数,那么第二种方式前面也是一样啊,可耐克的一个空件,然后发射出一个信号,那后面呢是 instance 点 master name 啊,这个呢就是调用一个类或者其他空间的这么一个方法 啊,这种方式与上一种方式不同的是,上一种方式是我们完全自定义的这个函数,就是我们可以自己随意写一个 dfan 一个函数,那么第二种呢,就是从一个已有的类里边调用一个方法。好,我们看下第三种。第三种呢也是 前面都是一样的啊,连接一个空间和他的发射一个信号,然后呢谁去呃处理这个槽呢?就是谁去实现这个槽函数呢?也是 instance, 然后这个字母 敲错了一个一四三四,然后这相当是一个空间,另外一个空间跟前面的不一样的空间,这个空间的自定义的槽, 那么后面会有一个 slow 的函数啊,这个自定义的槽去接收前面的空间发射出来的信号,那么手动连接信号一槽呢?我们常用的就是这三种方法, 呃,这个手动去连接这个信号隐藏呢,我们后面的实力里边也经常会用到。那么我们 本节课呢,主要是跟大家先预先介绍一下,那么我们这个课程主要是啊介绍使用艾瑞克去自动生成这个纤维操,因为啊大部分的工作呢可以自动做,我们就不要手动去自己敲,因为毕竟自动生成会稍微快一些啊,需要手动的时候我们再说 去连,那么我们使用这个艾瑞克生成草函数呢? 呃,也是这样的一个类似于这个拍层的这个啊, 相当于核心价值观的这么一个说法啊,能自动生成你就不要手动去编写,也不要重复造轮子,非得说你自己手动编写的函数效率都这么高,比这个啊用 id 自动生成的都好。我觉得这个没有必要,你有时间你可以把这个精力放在其他事情上, 然后不要重复的去造一些轮子,还觉得自己特别牛,这个真是得不偿失。那么我们现在呢,就演示一下这个 怎么样用艾瑞克去生成呃,相应的这个草函数。第一, 他是一个黑框一闪而过,然后 出现一个恐怖的舌头,那么进行一些处处化之后,他就会打开这个环境,我们还是在上一次那个工程基础上进行修改和添加,这样,嗯,大家学起来可能也比较有连贯性,不要把一个工程用完了之后就直接丢了。 好,我们打开最近的工程, 那么这个 gy 我们双击看一下。 好,这里边就是我们现在的上一节课的这个例子,那么我们这节课呢,继续使用这个例子啊,因为这些 我好像都已经连到了相应的这个槽上,我看一下,对,这些按钮都已经有相应的槽完数了,那我们再拖一个回来,再添加一个新的按钮, 改个名字就要测试, 然后保存编辑一下这个床体。好,编辑成功,我们运行一下看看。 嗯,好,我们这个,呃,窗体已经出来了。好,我们点击这个按钮,因为他没有连接哦,手动,没有,手动边缘,他的这个槽函数代码也没有,在 这个,呃图形界面里面给他分配草函数,那么他是没有任何响应的,那这边呢?啊,这边这些屏幕依然啊,这边这些按钮依然是我们上一节课的那个草函数,所以我这里不做演示。好,我们来介绍一下怎么让这个 二十个号自动给他生成呃,像样的草函数。我们先来 看一下这个刚添加这个按钮的这个属性 pos 八三六,记住这个 lip 就是他的编号。 然后我们在这里右键选择弹出的窗口里选择第三项 generate, 第二个扣的。 啊,在弹出的窗口里面,我发现这里边克拉斯内没有,下拉也没有,我们就新建一个 啊,新建一个他自动弹出来的命运 window, mice, p i, q, t, test and p y, 啊,就是这个,我们就选, ok, 然后我们选下拉,选择找到这个我们新建的这个按钮, pose8, ten, 嗯, six, 然后点击前面那个小三角符号, 我们看到这里边有一些那他支持的这个信号,那么我们点击第一下。

那 python 的环境搭建又是什么呢?刚刚已经给大家提到过了, python 它是一个跨平台可移植的一个编程语言,所以说它是可以在 windows 系统, linu 和 micros 系统中安装去使用。 那你安装之后你就会得到 pass 的这样的一个解释器的环境,你可以去通过这一个终端输入我们 pass 的命令,去查看你本地是否去安装的这样的一个 pass, 以及我们 pass 的一个版本。 但是在这里需要注意的是什么呢?哎,你在安装这一个 python 的过程当中,你需要去在它的安装目录下去添加到我们的这一个环境变调中,否则的话它是会报错的。 如果说你在安装过程当中忘记添加了,那你之后的话就需要去手动的安装到我们的拍摄环境。那接下来我们来看一下 这一个 python 官网当中他是如何,他是什么样子的啊?给大家简单的了解一下。那么他我是提前进来了哈,因为他的网速非常慢。那在这里的话,我们不用管其他的,我们直接去看他的这个 downloader, 当 note 当中它会有一个 windows 以及 micros, 那你是什么操作系统?那你就下载相应的一个版本下它旁边的这个最新版本,它安装的就是 for windows, 就是 windows 的一个版本,三点是一点一的。 那其他的话我们再来回到这一步,回到这一块,那大家想一下,你是要下载 pass 二版本还是 pass 三版本呢? 很明显哈, python 三,这是什么原因呢?我们来看一下 python 官网是如何解释的。首先第一个 python 三 is strongly, 就是 python 三,现在非常强大且非常流行,那 s o 二零二零他就表示的是你在二零二零的时候, python 二已经到了 intellif, 就是他的一个生命的尽头,也就是说我们 python 的官网已经对这一个 python 二版本已经开始不维护了,既然不维护的话,你在使用 python 二出现了什么问题,你给官网反应的话,他也是不会理你的, 所以说大家在之后的话,使用 python 三会比较主流一点。那接下来我们来看一下这一个 python, 它的一个官网,它的一个操作系统,刚刚是不是已经给大家讲过了,就不细讲了哈。 那在这里给大家讲一下我们的这个六十四位和三十二位之间的一个区别。那这个六十四和三十二是在哪里看的呢?就根据你电脑的这一个属性来看,他这里会有一个系统类型,旁边六十四位操作系统,是不是你六十四位的话,你既可以使用六十四,也可以使用三十二,但是你 在这里是三十二位的话,你就不能使用六十四,不能越级哈, ok。 那其他的话,这个 zip file 就是你下载的这一个安装包,是一个解压的文件,还有什么安装包,还有在线安装等等。好,其他的也是一样的。那接下来我们来看一下它的一个傻瓜式安装, 点击这一个啊,安装包之后的话,他会出现两个小箭头,首先在点这两个小箭头其中一个之前,要选择你的黄金配置的 变量,选择勾选号,如果说你没勾选的话,你后续可能需要自己手动的去安装。那其次的话,这一个 instagram 就是系统安装,他会自己帮你安装。直接安装在哪里? c 盘下面,你可能最后还找不到他的路径,所以说我是不推荐这一个 instagram 的,那我们直接去选择第二个自定 安装,自定安装之后直接进入到什么页面?这一个页面我们不用管它,也不用取消勾选,直接点击 next 下一步, 点击下一步之后呢,他会出现一个路径,他的路径还是在 c 盘,我不是很建议哈,尽量的选择在 c 盘之外的攀附。其次路径中不要有中文,可以看到他这个系统中就没有中文的路径, 那么我们如何去修改呢?点击 boards 去找到你自己想要把它放在的路径之后这中,然后点击因素下载就好了哈。下载就好了。 下载之后呢,我们直接 windows 加 r 键,他会出现在右下角的一个这样的页面当中,输入这一个 c m d, 进入到我们的 dust 命令行,是不是进来了,进来之后的话,我们输入这一个 python, 他就能够进入到我们 python 的一个叫 环境,可以看到我的 pass 是三点七点五的一个版本。好,这样子的一个环境,出现了大三个大于号的符号,就表示你的 pass 已经安装成功了。已经安装成功了。好,接下来的话我们来看一下。哎,是不是那么可以在三个大于号后面去输入我们的一个命令,我就不输入了哈。 我们来看一下它的一个小小的小贴士。第一个就是你安装的路径不要有中文,第二个尽量安装在 c 盘以外的一个盘符。第三个就是你要知道你安装到了哪里,如果说不知道的话,也有一个好方法哈,我要 pass, 像这个的话,因为我没有这样的一个模式哈,所以说就提提取不到,但是的话大家可以去找到哈,大家可以去找到,我没有用那个管 里面模式。好,除此之外的话,就是你的这一个黄金变量的添加,然后 pack, 嗯,就是你苹果电脑,就是 mac 系统的话,它会自带一个 pass 二的一个版本。如果说你想要进入到 pass 三的一个交通环境的话,你需要提前的去安装它。 像出现了这样的一个问题啊, python 什么什么不是内部和外部的命令,那就表示你的一个环境变量没有安装,直接解决它就好了哈。点击属性,点击这一个高级系统设置,点击环境变量。这里步骤的话是已经写的非常详细了,大家根据这一个步骤来就可以了, 添加好之后你得一个一个点确定,确定保存之后重启我们的 dust 命令行哈。好,这个呢就是我们的一个 person 的环境搭建, 拍摄环境搭建的话,其实是非常非常重要的一步,如果说你的环境面料没有配置好,那你之后去写代码,去配置这一个编辑器,去配置编辑器当中的一个依赖的话,就会出现很多问题,很多小问题哈。

各位小伙伴大家好,今天来分享一个 qt 那个图形化界面边那个,呃,创建了一个,做了一个小工具,就是, 呃,今天就是看了一下那些教程,然后自己摸索了一下,然后做了一个小工具。好,我们现在看一下他那个效果, 这个就是有道翻译的工具。小工具,然后就是界面就是这样,就是 就是做成,做成这样。然后我们看一下他翻译的效果。人生苦短,我用拍神有道翻译, 然后他这里下面就给你翻译下来。 life is short i used 拍摄,然后这个可以清空内容,这个按钮可以清空内容。呃,然后我们翻一下,看一下这句 never say 大爱,然后看一下他翻译的效果怎么样?有道翻译永不气馁,这个翻译还是可以的,然后他这个上下交换的话,他可以上下交换,是吧?这样你看上下交换, 嘿嘿,有点意思。然后这个翻译翻译,哎,永不他这个都翻译。那我们看一下,再翻一下,看一下,这是这一句, 等一下,然后有道翻译。你看我所知道的一件事,就是我一无所知。苏格拉底、希腊,这个翻译还是还是比较准确的,我们看一下这个, 这个可以清空内容,清空内容,点这个按钮,就是把上下两个全部清空,就是现在这个比较简单,现在这个功能还是比较简单,后期给他,给他丰富一下,我们看一下他翻译的这句 翻译, 嗯,这个翻译还是可以的,比较准确哦。比如说上下交换一下,然后他再翻译一下, 他也是一样啊,比如说你把这个删除掉再翻译,他也会可以翻译下来,你看就是这个上面是不管你输入中中文还是英文,他下面都可以翻译,翻译有乡音的那个 相应的结果,我们输入一个长一点的那个这句话,老师这句话我把它复制进去, 还有一道翻译,你看一下子就出出来结果,所以说这个这个翻译的还是速度还是比较快的 哦,这清空这个速度上下交换他就可以交换,你看空的他都可以交换,我给他翻译上下交换有道 翻译,你看他就会根据你这个输入的英文下面相应的输翻译成中文,然后再清空上下电话,这样翻译是不是这个翻译没问题的?然后我们看一下他实现的一个,看他是怎么实现的,这个 这个看一下他在这里这个就是,呃, 这个就是拍摄那个 py site to, 那个 qtpy site to 那个空间 给给他创建出来的。还有这个是 dj 呢,这个 gqt 设计师。然后他这个这个好处就是今天看了一下,看了一下别人的做的那种,然后摸 摸索了一下他这个他这个界面,这个界面,你看这他这边, 这边是那个空间,哦,这边是对象那属性,这个就跟 xs 一模一样,你看跟这个是不是?所以说你看这个属性都在这边,然后他这边是窗提啊什么的那些 大概思路都一样,反正就是你这个在这边把这些图形给他设计好, 这个这个框框什么给他画好,这些东西给他画好,然后这里对象这个名称给他取好,取取好,你看这个名称, 这个名称,那个到拍摄这里面他要用的,就是到拍摄里面他这些名称都要用到,所以说这个名称是比较关键的。他这个就是相当于一一个设计软件, 然后你,然后呃,你,你把把,然后用潘审,用潘审给他联通一下, 就是代码写在拍摄里面,然后比如说你一一运行的话,你一运行的话,然后他就调用那个,调用那个那个你做好的那个界面,这个界面要要放在这个文件夹下, 这个要放在这个,呃,要放在这个,这个是那个拍摄程序吗?然后你把这个要放在这个文件夹下,就是一歪这个,这个就是我们设计好的那个 这个界面就是这个,然后我们可以看一下它里面的那个是什么方式的啊?用这个打开, 用这个工具打开一下这个, 呃这个油啊,这个是我们做好的油道翻译工具,界面给它放到这里打开一下, 然后就可以看到他这个是 xxml, 这个你看他这里面都是 这些,给你定义好,就是这个,就是你看他这个那些大小啊,他都给你保存在这个文件里面,然后你拍摄只要调用调用一下,调用一下那个意外,他就可以实现那种功能。你看 在输入内容什么东东西,这个内蒙这个什么这个这个放的 这个怎么名称呢?是字体大小,那这些标题都在这里,你看这个就是叉 ml 文件,他保证是这个文件,然后我们可以动态调用,在这里面动态调用你这个,比如说你,你比如说你在里面, 呃,比如说我们再加一个,再加一个那个,再加一个那个,呃那个过来把它画大一点, 这个这个是那个,比如说新,我比如说我是一个按钮,比如说我们新新这些新添加了一个按钮,然后我们这里保存一下,哦,这个要把它关掉。 是那要把这个关,这个不用关也可以,这个说明他我们保存了,然后他就实时更新了,然后我们再拍成这里重新运行一下,先把这个关掉, 你看到没有他这个按钮就过来了,看到没有这个按钮就在这里,所以说他这个比较方便,功能看起来比较强大。 就是跟这个,你看跟这个在那个 xs 里面设计的那些窗体一样的吗?你看这个什么登录窗体设计模式,你看这些,你看他这也是空间, 然后按钮这些东西。所以说你,你如果把这个 xs 说实话老师那个教的 xs 技术打牢的话,你到这里来设计的话就就会感到很亲切。他这里面也是按钮啊,空间那些空间,然后他这个这边是对象查看器什么的,属性什么的,跟跟在一个 xse 里面是一模一样的, 都都。如果你设计成这种,是不是你就比较容易上手? 让我们看一下那个代码,他代码就是这个,这个都是那个 pyc 的兔,这个要加载用到的库,这个 apk 选作为一个应用程序, 这是 qui low 的,这个就是加载 ui 界面的,然后 q 发呀,就是从文件里面加载这个就是那个 有道翻译要用到的库,律块式的库,那些库什么太猛,什么潘达是什么,然后这个就是这这几部就是那些加载这上面的这些,就是就是就是加载那个意外界面的, 然后给他联通,这个就是从文件里面加定义加载意外定义这 q 发哟,这个是那个意外界面,我们做好的意外界面,然后给他读取一下,然后 这个 qqui loader, 然后这个漏斗一下加载一下, 然后你就把这个界面给它加载过来了,动态给它加载过来,做好的界面给它加载过来。然后还有这个就是在按钮上的那些动作,就是这个按钮上的这些动作,这些动 动作有道翻译、清控内容、上下交换这些,这个就是按钮上的就是你,就是你把那些功能给他, 给他联通到这个按钮上,你看到没?这个 cf 乱,这个就是那个我们做好的那个一一个函数,这个乱,这是一个方法, 就是我们这里面做好的写好的这个,这个就是执行的结果,翻译的结果,然后他这个 cf clean clean button, 就是这个, 就是这个清空清空文本内容,他这个只有两行代码就够了。所以说这个拍摄拍摄有一个有一个好处,就是代表代码量,那,那那个代码量非常少,就是他有有有的,你只要一两句代 代码就可以搞定好多那种,不像这个这个什么这个,呃,不像这个 xs 里面那个赛事里面要写代码的话就比较比较复杂, 你看他代码就是写的,你看写的比较多,所以说实现一个功能的话比较复查,你看你看要实现那个功能要写好多代码的,你看这个,但是他在拍摄里面,你看就感觉就是就几行代码就搞定了, 你说拍摄拍摄还是比较强大的,然后他现在可以跟这个 qt, 可以 qt 界面、图形化界面结合起来的话,后续可以做好多事情。 比如说你把你那些爬爬取到的,你可以都可以把它实现成为一个工具,小工具都可以用图形化界面的方式,如果像这样的话就感觉比较不好操作,如果你你把它写写成一个小程序 就比较美观一点。 然后这个就是交换,交换执行交换的那个我两个文本框之间的内容, 这个就是你看这个就是巴特一个欠局,所以说这个名称很重要,在这里巴特一个是欠局, 那这个名字你就可以跟他联通,就可以,就可以跟他连接起来,这个 connect 老老板 那个方法放到里面,他就执行这个,你点一下按钮,他就执行这个方法,这个方法是在这里,你看前提上下两个文框内容进行交换,这些都是属性方法什么的,那个文本框, 然后这后面后面就是那些有道翻译的,呃,爬举,爬举有道翻译数据用到的属性。 然后最主要是在这里面他创建一个,是在一个类里面,所以说你这里面创建,比如说你想要什么方法,你直接定一个函数,第一 f 定定一个函数,你想要用的话直接拿过来用就行了。你看像这样,像这样直接拿过来用 就比较清楚,这个就是加密的,加密的函数, md 五加密的,然后这个 英普特,英普的接收,接收就是他这里不是翻译的话,要翻译的话,他要接收这个,接受你这里面的那个输入的翻译的内容,他要用到这个 tst input, 就是这个我们在这里取的名字 txt input, 这个就是这个 text input, 然后他这个 two plane text, 就是就是得到他那一个里面的那个文本框里面的那个内容,文本框里面的一个内容, 就这个文本框里面的内容,然后就拿到,然后这个返回一下,然后你就在后面,你就这里单独做一个函数,就是你后面随时都可以绕到这 一个,就不用去学好多代码,你看比如说这里都有都有都有,用到这个加密的函数,应该这里也用到了,你看这个 cf 点音不疼,你看是不是这可以都都都用到这个,这个 cf 音不疼,你看这也用到 cf 音不疼, 所以说这个好处很多,然后这个就是乱,这个 主要的还是就是乱,然后他这个他最主要,这这这里一句就是 让翻译变化,接收翻译的结果,并显示在文本框内,就是这个拉丝的绿扎特,这个就是我们得到的那个翻译的结果,把它放到 cf 点 uyuy, 就是我们这前面创建的一个对象,这个 uy 对象 在这里 cfey 等于 q 捞的这个,这个这个里面的这些就是把它连通了,然后你就可以用 cf 点 ey, 这里就是从意外定义中动动态创建一个相应的窗口对象,里面的空间对象也成为窗口对象的属性,就是里面那些属性,他这个意外 都有了,就继承他那个属性的,所以说前面要加 sl 点 ui, 什么巴腾啊,什么 txeat 的那些什么文本框啊,什么他都有,他都有那些属性的 来,这就是意外一点,泰克斯奥特普德,就是这个,就是这个文本矿,这里的文本矿泰克斯、英奥特普德。所以 这个名称取得很关键,你要知道他这个是哪个名称,然后在拍子里面就拿过来,也就用,然后这个 set the plane text, 把那个结果放进去,他就给你显示出来,然后后面就是 以前的那种代码,就是潘大师那些,我最主要这里还有还要就是创建一个对象,实力化一个应用,诚信的对象, 这个 appqap 开选这个就是创建一个对象,然后这个就是这两句很关键,就是要加进去, 如果你这句不加的话,你说你这句把这句这个 appex ec 这个就是进入 q app 选的事件循环,接受用户的输入事件, 并且分配给相应的对象去处理。如果你你没有这句话的话,他这个他这个是一个死循环,在这里面一直循环,一直循环,除非你把这个按了一个擦掉, 他就退出了。如果你没有这这这句话的话, apapp 点 ex 一期这个这句话的话,他只会执行代码, 你看他只会执行一下,闪一下,他就没有了,因为他这句话不加进去的话,他没有循环起来, 就是他没有一直在循环,他只是执行代码,执行到这里就就结束了。如果你把这句话加进去他他会一直在里面循环,一直循环,除非你按按掉那个叉叉,他就退出了,和这个就是实力化一个对象, 那这个是这个瘦一下,就是执行主窗口的瘦方法展现在屏幕上,所以说这个就是 他这样就可以达到那个功能, 就可以就可以达到这种功能,你看是不是他就可以跟这个连接起来,你后期就是后期还可以把它分装成一个可执行文件,这个都 这个还还是有挺多内容的。然后他这个,比如说你把这个,我是一个按钮给他删掉 啊,这里保存一下,他这里就实时更新了,实时更新的话你把这个擦掉到这到这里重新执行一下, 你看他这里就没有了,就是感觉他比 excel 比比这个 xs, 感觉比这个 xs 还灵活一点, 因为他代代码量要写代码量比较少吗?他只要几句话就就就搞定那些, 那就是这样,最主要是这个 qt 设计师。 好,今天就先分享到这里,后期后期就把这个把这个再再给他优化一下,把那些什么 cs, 让那些样式给他做好看一点, 把那功能再加加多一点,把那些所有所有的翻译的给他功能全部加进来,就就就可以了,就就就就是这样。 所以说孙新华教的这些,孙新华老师教的这些,这个现实很重要,如果你你,你知道怎么在这里设计那个软件的话,你就在这里 qdd 这样的,那那就更容易上手了。 所以说那个赛事是比较基础的,但是他很重要,学好这个的话,图形设计的话就没问题。 我今天就先分享到这里,我感谢说心话老师无私的分享,是要说虽然说心话老师要好好学,像说心话老师学习, 那今天就先分享到这里。


好,那么同学们啊,今天的话呢,我们就是给大家呢开个头,呃,我们接下去的课程的话,主要是学这个叫做 qtqt 啊,那么 qt 的话呢,我也给大家简单的介绍一下,有同学可能是没有了解啊,那么,呃,我们要知道 qt 它是一门语言吗? 回答一下算是吗?不是啊,不是不是啊,答案不是啊,为什么呢?因为他只是一个,只是一个酷, 只是一个酷而已啊,那么这个酷是什么呢?这是一个封装的 c 啊,加加的的酷啊,那么实际上也可以说是封装的酷的话,我们一般来说都可以说成好像 一个框架一样的框架,一样的框架啊, qt 框架对吧?啊,那么类似的啊,类似的风装 c 家家的裤还有什么呢?还有啊, mfc, mfc 啊,这也是封装 c 家家的库,那么这个库的话呢,是微软的啊,这个是这个是微软的,微软封装的,微软公司,大家都知道的,对吧?那么这个库呢话呢是呃 q t 的这个库的话呢,他是谁谁呢? 呃,原来是诺基亚的,我记得啊啊,后面是被收购了,我们来看一下啊, qt 原来是谁?什么啊?看到没有,他就是叫做应用程序框架对不对?首先定位就是个框, 讲并不是语言是吧,现在像拍摄的话呢,我们刚刚提到的就是啊,他其实呢,呃,也只是一个脚本解释程序而已 啊,那么我们这个写拍摄的人,因为觉得他好用吗,然后写了很多东西,所以习惯性叫做拍摄语言啊,那本质上也是一个教本解释程序,那么一般来说,我们一些这些语言的话呢,都是具有这种编意性啊,编意编意成什么的,一般来说这个要更加大一点的啊。 嗯,那么现在的话呢,我们其实很多交会程序也是非常强大的定做的,那么这个最早的是哪个公司的?看到 啊,诺基亚吧啊,被诺基亚公司收购的,哈哈。那再早一点是什么?没写啊,已经他的历史 他历史再看一下,看一下他的第一届呢,这是某某,估计是一个组织一样的东西啊,来开发的 qt 有个公司之前成立了,然后呢后面是一个基金会啊,哒哒哒。 一开始的时候估计是是像一个小小小团体啊,对吧,就像你们现在这个小团体啊,以后有可能会发明某一种语言,哈哈哈。啊,那么我们来看到啊, 呃,研发公司是属于 qt company 啊,原来的,那么后面是被诺基亚公司收购的,也就说后面的话呢,我们诺基亚手机我们早期的那块摔不坏的那一款啊,很强的对不对啊,怎么摔也摔不坏的砖头,那么 这样里面就有这个 qt 的这个框架啊,啊,对吧,因为被他收购嘛,那他肯定多多少少是要去使用的对不对?好,那么 呃首先我们定定位啊,这个地方是 q t 公司啊, q t。 康复内对吧?公司康康内啊康复内。那么这个 q t 我们要来有什么用 啊?有什么用?笔记做好自己,就这只大老一样的。这个听着啊,大老爷们的啊,这个有什么用呢?他本身有什么用呢? 他本身的话呢?呃,其实就是因为他是个酷吗?对不对?既然是个酷的话就是封装了好多好多的函数啊,那么就是方便使用而已,对吧?就方便方便使用这个 c 佳佳啊, c 佳佳,那么他更大的 还有提供的一个好处,就是啊,帮助我们干什么呢?进行可视化开发,可视化开发,那什么意思啊?我们可以利用这个工具叫做 q t crate 来进行可视化开发。 q t crate 啊,进行可视化开发, 那么这个叫做 qt 啊, c r e a t o r 啊, 用它来进行可视化开发,我们就相当于就很简单了,感觉好像未必这拖一拖空间就可以了,对吧?啊,那么呃,实际上的话呢, 可视化开发只是一个辅助工具而已啊,这个仅仅只是一个辅助工具,我们要知道的是辅助工具啊,辅助工具,那么我们本质上是什么呢?本 之上啊,还是什么呢?调用这个 qt 的库来生成界面,也就是我们可以完全存代码去写我们的这个,哎,一个写出界面来啊,然后呢就写出一些各种各样的空间,就像我们的 htmp 一样, 对不对? gs 一样,这个就是类似于这样的啊,纯代码界面可以去写啊,那么本质上就是用这个酷控件啊,酷的控件, 那么我们 qt 的话呢,我们首先啊,完成之后,我们先来看一下他到底是怎么样的,我这个地方是安装好了一个 qt, 那么后面的话呢,我要教大家 跟大家讲一下这个地方啊,如何自己要去,回去之后在自己家里的电脑上面安装好啊,那么我们默认打开好啊,安装好之后 的话呢,我们其实是这个地方,他会提供这一个可视化的一个开发工具啊,可视化开发工具,你大的那个包里面是有的, 那么呃,也有一些安装好之后,就是也有些没有包含这个安装工具的一个包,比如说你安装的时候没有包含,对吧?没有包含,那么这个没有包含,就像我们的这个拍损当中,呃,没有这个,没有这个包,没有这个包啊,一开始没有,那么后面的话呢,你要去添加一个叫做 q t d 三个, 那么这个东西就叫做 qt 点赞用,那也就是说我们的拍审这个语言当中,对吧?他有一个叫做呃, py qt 五 啊,这一块的话呢,他其实就调用的是 qt, 第三个就是调用的是这样的一个界面,调用的是这样的一个程序啊,然后我们就可以 相当于直接在这个程序上开发完,开发完成之后呢,我们拍摄有一个转换啊,有一个转换可以把这个 qt 的这个代码转化成拍摄的这个代码好了,那就可以直接 就可以直接用了,拍摄里面就可以直接用了,也就说你这一块是跟拍摄也是通的,哎,也是通的啊,可以直接转换。大家没有看过我的呃 q t 五的一个高级教程,对吧?啊?在我的拍摄高级应用教程当中专门讲到 q t 五的开发啊,其实就是针对这一块 啊,那么呃这个里面的话呢,我们看到是有有工程,对吧?大家可以看简单看一下我这一块之前开发的一个电池电压的一个项目啊,看看这个地方还能链接过去啊,那么这个地方的话呢,打开之后 啊,我们看到的是有分成这几块,那么 c c 语言对吧?或者 c 加加语言,这里面默认。其实我们在我们这个是使用 q t 的这个软件啊,其实还有一款软件叫做,呃, vs 软件, vs 这个地方我没有装好啊,用 vs 啊,我们现在维修斯的六啊,维修斯的六并不是 vvs 扣的。不一样的啊, 维修斯六六这款软件当中我们可以开发 c 家家,对不对啊?是那是微软开发的啊,那这个就是,呃,现在我们可以说是我记得比较牢的就是诺基亚,对吧?哈哈哈,那么我反正现在是属于,那因为被他收购的肯定是属于归他所有, 对吧?那么他这个地方我们每新建一个 c 家家的程序的时候,他就会出现这三块啊,一块叫做 head 头部,头部头文件, 也就是啊,嗯,头文键,这个头文键里面一般包含什么呢?包含很多我们函数的名称,就像声明,也就说我们所有 c 家家语言当中啊,我们,呃,我们或者 c 语言当中我们在使用的时候, 我们需要将我们自己写的一个函数,比如说我们现在 gs 当中,之前还是飞机大战的时候,直接翻过去一个函数的名称,对吧?好了后下面定义好,我们就直接可以调用了,对不对?但是在这个 c 元 c 家教当中,我们就必须还要将我们的这个函数名称 加他的括号这些参数啊,后面最后以分号的形式结尾啊,我们就函数体没有啊,这样的一个整个整个名称在哪个位置声明呢?在最上方啊,在最上方声明,最上方声明文件的 最上方声明,如果说你没有声明的话,就意味着他还是无法去调用啊,因为他是代码从上到下开始读的,除非你把这个函数写到这上最上方定义所有的函数翻过去定义写到最上方,那你就可以去调用 啊,这个就是很大的区别,这个也是由于,呃,很多人就是少少使用这个习家家的语言这种来去,比如说是做某一个应用程序,对吧?就是因为很多东西啊,你会发现他比较麻烦 啊,但是 q t 的话呢,已经减少了很多麻烦了,因为已经封装了很多 c 家家的这些代码,对吧?你如果纯使用这些的话呢?就像我刚刚这种模式,我刚刚跟大家所说的这种模式啊啊就比较麻烦,对吧?那么 q t 的话呢,就可以很大程度上我们解决了这样的一个问题,但是呢还 是要存在文件包含性的一个问题啊,要包含,那么这个呢是所谓的头文件,所有的头文件,所有的头文件记录下来他都是以点 h 作为扩展名 啊, head, 对吧? head。 那么,呃,这个上面有一些很多预定一的这些程序啊,这个 qt 里面已经给你预定一好了。那纯西家家语言你去写的话呢?是没有的, 全部你自己去写啊,当然这些东西都是我后面后面自己补上去的,对吧?很多东西都是自己补上去的,创建完成之后这些东西都要自己补上去。我们看看这个程序长得怎么样啊?呃,我开发的一个一个一个电池电压的一个程序啊, ok, 应该是能够跑起来的。 然后就是这样的一个界面,大家看到我这里其实界面是没有的,我是纯代码开发的啊,没有的,对吧?这里直接是 c 家家 cpp 这个语言,对吧? 没有的啊,就是直接是属于呃纯代码开发的,呃这样的一个程序,对吧?大概大概是也差不太多嘛,下危机什么的,什么个意思啊?也相当于你监听端口,什么个意思呢?我开启一个监听的话呢,我就可以获取远程的这个数据了,比如说我去获取真真家具的这种数据, 对吧?监听端口一打开他所有的数据都就就过来了啊,那我这个地方呢是获取什么呢?获取获取这个呃电池电压的这种数据啊, 等等啊,那么这个地方什么采样器啊什么的,同样的我们可以做一些右键启动啊什么的,对吧?等等的啊,比如说也能够做一些很好的这种数据啊,这种数据的模拟, 对吧?这种数据的模拟,那这些图的话呢,要求同学们都是要自己能够会去写的啊,模拟图,对吧?我们比如说我们 实时的将我们的这个光照,光照这个情况获取过来,这个数据我们要能够给他生成这种图形,包括这种图形的话呢,我们也是能够在我们的网页当中也是能够去做的啊, canvas 啊,我们就可以去做,对吧?画图啊,画图工具, 那么呃我们这这其实就是一种比较简简单的简单的一个啊, q t 的一个程序一个界面,对吧?那么这个我现在装的这个版本呢叫做什么? windows 版本,对吧?因为这个 q t 的话呢,它是有一个特性啊,它这个 好处呢,他这就是跨平台的啊,跨平台的,跨平台的,他是跨平台的,那么就 就意味着我们这有有这个什么温德斯版本,对吧?那也有这个,呃呃,六六个四版本啊,六六个四版本,那么我们到时候呢?在我们的这个开发环境上,环境上面啊,比如说我们要开发这个 相关的下位机,去获取我们的这些智能家居数据的,那么这个时候我们是在 obantu oubantu ubandu 这个 linux 服务器上面啊,我们这个地方,比如说我们举例就是一个乌班图 uberantuuubuntu two 是怎么写的 啊?忘记了,哈哈哈哈,乌斑图写中文吧啊?翻译一下就是乌斑图 乌邦图吗?乌斑图吧,乌邦图啊,那我这样吧,查一下吧,乌邦图 我帮 too 啊 t u 吧,应该就是应该写的是对的啊, 般啊,你看就这个对吧?就这个啊,我记忆还是不错的啊。啊,那么这一款呢,也是属于零六克斯开,就是相当于是一个像一个型号一样的,对吧? 那么我们,我们也就是说我们要学会啊,这个不班图的这个零点服务器的一个基本使用,比如说我们如何去复制文件,如何打开目录,如何在上面去编辑 啊,那么呃,与此同时我们学会在这上面如何呃共享文件对吧?共享服务器怎么去搭建 ftp, 你比如说你,你怎么去给他开启,那这些都是基本操作,所以说我说上次,呃,有有 有其他老师在上课的时候,大家可以旁听一下,大家都会学会了,对吧?下次我就不需要讲啊,其实我也我也当然要给大家去讲这些东西,这些都是基础啊,对于我们这里来说应该是基础的基础啊,我们更重要的是做代码的一个开发,对吧?啊?所以我们这个边,我们这个地方的话难度是比较大的啊,具体的一些东西在做的时候, 大家要要花比别人努力十倍的时间去完成,才能够成长的更快啊。那么 无斑图还是无帮图啊?中文反而到错了,哈哈,不不写了,我们就这样吧,那么也就是说到时候的话呢,是在这个地方地方啊,两个平台我们使用的时候在这个平台 平台上面使用,那么这个平台我们上面使用的时候的话呢,我们把这个平台是装在虚拟机上面啊,装在虚拟机上面直接去使用的,那么我这个地方当然 我们也可以直接装在 windows 上面。呃,如果说我们自己家里面的话呢,我们可以直接装在 windows 上面,当然啊,就是说我们同学们也可以直接拷贝一下我们给出来的这个资源啊,一个叙利级文件,然后呢直接装到叙利级,然后叙利文件宰出来就可以了,就直接装好了,都不需要去装了,一共大概有十来个 g 啊, 十来个 g, 那么这个其实这个也也不小啊,你要单独去装这个装这个东西的话也不小啊。啊,你看到啊,好像也有,也有很多很多个 g 啊, qt, 那个这个 qt 文件夹就是我我我装的,装在这个地方,对吧?你看看有多大,有好大,因为这里面的话,我我这个地方我我宰了好多的,他的一些空间支持库等等,对吧?所以他这个地方其实也很大,估计也有个十来个鸡了,所以还是比较大的,大家要准备 大概可能二十个 g 啊。二十个 g 要有,对吧?就比较大本身其实他就比较大啊。 啊不不宰了啊,反正就一直会加吧,大概大概加到十来个 g 吧,印象当中是这样的。那么呃这个地方下载我们该怎么去下?他是一个开源的,当然是免费的,对不对?我们可以直接去下载啊,我们直接搜索一下就可以了啊。呃这个叫做 呃叫做 q t 呃就直接 q t 就 q t。 好像是有个档文件呃这个这个官网你进去是找不到的。 呃到这里啊这个是一个文档到这个啊这个这个这个看到没有?有个档 点 qt 点 io 这里面去找到相应的这些 qt 的版本,然后呢直接就可以下载啊,他是他是开原的嘛对吧?啊直接可以下载各种版本啊,很多版本那包括跟我们训练机同样的这种版本啊。都有啊,我们就下载最新版本就可以了 啊那这里面呢?这个地方这是 windows 上面的啊那我们这不止 windows 上面啊,这有很多的,你可以点赞点进去啊 啊然后呢我们这个地方有个这个新新新狗叫单独的一个程序,你看这个是那那个是上面的对不对?这个是 l v 啊啊 v 的上面的啊。那么你这个地方感觉好像不大啊,只有一个机左右, 一个级左右吗?啊可能可能还只有四百可能这个文件可能还不一定全啊。我们来看一下我这个地方呃我这插件还脏了很多对吧?这是我这地方是我寻思四点八版本的, 我们欧巴看一下啊,五点一二,对,我这里装的是大概是这个版本五点一二的 q t, 五点一二,四点八,对吧?我们来看一下啊,也就说,呃,在之前的时候我们看看我这个四点八大概是有多大 啊?那么比较慢,大家呢?进去之后我记得,呃,我我们这个地方啊,就是说我我 之前是有个 exe 程序的啊,他现在可能最新的这个版本又更新过了,又不一样了啊,那么基本上我们能装上的话,能直接能用就可以了啊, 那下载的位置就是从这个位置那不同的版本他不一样的,大家可以进去之后呢自己去看一下,那这里面我们具体就不多讲,好吧。啊,不多讲,那么我们下载应该会了,对吧?要找到的是这个记一下啊,档点 qt, 点 io, 直接把这个记下来就可以了,我把它它复制一下, 这个就是下载的一个跟目录下载 下载,呃,可以用最新版啊,也可以就是用我的这个版本,我的这个版本我感觉用的还好啊,有,当然最新版不一定是最好的,对吧? 就不一定是最好的,呃,我们要知道的是啊,温特斯上面我们现在写的这个版本啊,就是说我们,呃是无法移植到我们这个虚拟剂上面的啊,会有各种问题的 啊,会有很多很多的问题的,那么也就是说,呃,我们也可以直接拷贝一下我们学校我们这个地方给大家提供的这个虚拟机里面这个版本啊,那这样的话呢,对大家来说安装上面就没有什么难度 啊,那虚拟机我们这个地方就使用 vmvr 都知道吧? vmv 啊,这个虚拟机下载一下就可以了啊。呃,这这 vmv 公司的虚拟很多的,对吧?那这这这个呢? 对吧?这下载地址都有了,对吧?啊?直接安装就可以了啊?啊?破解版本都是啊,当然如果说同学们以后想要投入生产的话呢,还是要使用正规版, 对吧?啊?那么我们来看到啊,看到这个地方,呃, 现在我们下载完成之后,我们比如说该如何去新建一个项目,对吧?我们来完成第一个项目, ok, 我给大家演示一下啊,打开 好了之后的话,我们就会出现这样装完之后会出现这样的一个 qt 的图标,我们装如果是 windows 版本的话,对吧?当然所有的开发的思维思路是一样的,主要的代码是一样的,当我们进行移植的时候可能会进行小小的更改,有有一些个别的代码要进行更改 啊,但是不能,呃,不能就是说完全不更改的情况下就马上能用,这是没有的啊,而且各个版本啊,他所支持的这些库 一些一些代码会有点不同啊,就像我们现在我这个地方是使用 qt 五,对吧?我们呃另外一个环境使用的是 qt 四啊,这两个代码啊,我们在比如说开启骚 t 的这种用法的时候是完全不同的 啊,是完全不同的,当然你在我们这个位置可以去采用 qt 五,里面他是兼容 qt 四的, 我们可以采用 qt 四的写法去写,但是你我们我们在我们我们这个现在因为是属于 qt 五的,也比较标新了, 我们不是看到五点几这个版本吗?对吧?这就是 q t 五的核心,就是 q t 五的,那么这个 q t 五我们上面的写的这个代码,呃,我们像一些语法逻辑,那移植过去的时候,那就会出现问题,那这些代码我们只有进行修改才可以啊。所以我们一般来说开发之前 这样选择好,到底是选择 qt 五还是选择 qt 四啊?那么,呃,很多比赛的时候的话呢,基本上是用 qt 四比较多啊,那么日常的开发的话呢,用 kt 五比较多啊。 好,我们来看一下新建一个工程啊,新建一个工程,比如说我们新建一个 new project, 对吧? new project 一个工程,那么最简单的话呢,反正就是新建一个 opla k 旬,我们如果说下载这个版本的话, opla k 旬就可以了。创建一个 q t 的一个桌面类型的一个版本,那么这个是属于什么呢?这个是康索 康守,康守的话是像像命令行一样的命令提示服一样的这种,对吧?哎,就你运行出来到底是一个什么样的一个东西嘛?哎,这个这个威胁词的话,就是实际上就是各种各样的桌面端的一个主见啊。我们也同样可以用 q 来,比如说写很多的什么类,类似于贪吃蛇啊,游戏也可以能够写啊,那无非就是组建的一个组建怎么去使用嘛?空间怎么去使用嘛?就像下一次我,我跟你说,你能不能用这个网页,用 js 去开发一个贪吃蛇, 那是不是也是控制这个 div 而已啊? div 是不是空间这个地方,我们 kt 是不是也是空间控制其中的?比如说一个 labo 空间, 对不对?雷宝空间就像我们威逼一样去控制一个雷宝空间,同样的道理啊,同样的道理啊,那么这个地方我们新建的时候呢?微句词我们这个地方一个理解啊,微句词其实就是窗体, 其实就是一个窗体啊,我们理解就是理解成一个窗体啊,那么这个地方我们 oplacation 的话呢,就是新建的,是那么多,对吧?呃,然后这个地方利用他的这个 工具的话,其实我们还可以,好像可以用拍摄,也可以变形,那这个地方的话我使用的是 c, 我们这里面好像只有是 c 加加啊,但是我们这款工具的话,好像使用的是好像直接可以使用拍摄变形啊,对,他也支持的啊,也支持的 哦,我们那么这个地方下面有很多,这些地方基本上是没有用的到啊,这个地方有个 get, 大家可以呃呃,客户去了解一下啊,我们可以把我们自己的一些项目开源到网上的这个 get 平台上面,对吧?那这种 大家可以自己私下里去学一下。那如果有必要的话呢,以以后我也给大家去讲啊。那么像这些东西啊, no project 跟这些啊,这些这像,这个主要是属于团队化开发啊, suvs 啊,团队化开发或者版本控制这些东西,对吧?你也基本上不用看啊, 这个呢, nonqt project 这个地方是什么呢?就是建立单个文件的时候,对吧?建立单个文件的时候使用,那一般来说我们也不会在这里使用啊,很少使用在这个地方,当然也会后面有可能。那我们后面绝大多数在使用的时候会使用什么呢?会使用 一键一次,一次新建的时候他同时会新建三个文件,一个文件是属于 qt 界面文件,第二个文文件是属于 c 加加文件, cpp 的第三个文件是属于头文件 啊。一般来说我们在这个地方界面上开发的时候,我们就同时会新建三个文件,待会我会给大家马上演示出来啊。那么 大家看到我的这个项目,我的这个项目有几个文件?拜托人刚看到的时候看到一个 h 文件,还有看到一个 cpp 文件,最后一个是一个最 资源库啊,资源库就是我要调取的图片啊什么的啊,这个资源库是我们另外增加的,这个不算文件啊,所以就相当于是一个资源啊,资源库 资源的一个集合,那么我们在这里面的话,我们直接点击 nupro 加就可以了,对吧?打开新建,新建的话这些是属于设计的,对啊,设计的都都是属于单个的啊,那么我们想要集合的 全一点的,那么这个地方是属于开发一个酷的,对吧?这些一般来说我们在这个位置现在也不需要啊,我们只需要的是第一个 plak 群啊,当然我们 q t 四里面会有点不一样,大家新建的时候会有点不一样,但是大同小异啊,大同小异,我们这个地方讲的时候,以这个 q t 五的这个地方来讲啊。 呃,我们接下去的话呢,是打开这个窗口嘛,就相当于是我们创建一个项目应用程序, 这个应用程序是一个窗窗口的一个应用程序,对吧?我们不是在我们的这个嵌入式开发的那个有个 a 八那个像像手机一样,手机平板一样的那个东西吗?这上面是不是我们其实如果是创建的是这个应用程序类型的话呢?就意味着我们这上面可以看到我们的界面, 就像我刚刚的这个界面,我把它要是稍写到那个东西里面就看到的像刚刚我给他展示出来的这个界面一样的啊,展示出来的界面是一样的,那么,呃,如果说是这种康守的话,那就是一个黑屏了, 对不对?输出的一些日制黑屏的这种,这种吧,那一般来说我们可能输出这种展示型的这种界面会比较的多啊,就像我们把我们的 qq 刷写到这个平板里面去也是一样的,对吧?只不过这是相当于好像一个系统一样,刷进去之后我们打开之后就是他,那就就是个系统,对不对啊?就是个系统, 就是说就像我们不是那个平板,我们不是说过吗?我们把安卓的那个安装程序刷写进去,那他打开的就是一个安卓系统啊, 对不对?我们把我们的程序写完之后稍写进去,那打开的就是我们自己写的这个程序啊,这就是嵌入式的一个开放。好,接下去我们来,哎,下一步 啊,就就直接直接选择他去死,对吧?点击选择他,选择他之后我们接下去要创建一个什么呢?叫做项目文件啊,我们要选择创建好这个路径,这个地方还有个勾,有个勾,这个勾是什么?一个意思啊?就是说这个勾如果勾上,那么你下一次再创建 新的项目的时候,他就会默认显示你上一次创建的这个项目的路径啊,如果没勾上,那就反正就就不显示了,就是会显示成这种东西吧,对吧?那么我们这个勾起 其实这个地方也不用管他啊,不用,不用管,那么我们比如说 test 啊,就测试啊,我们的这样的一个程序啊, 好,接下去我们这个这个程序的路径,比如说我们把它创建到我们的桌面上啊,桌面上我们创建一个,桌面上我们新建一个啊,这个 ljy 吧啊, ljy 里面这个文件夹里面,我们待会会有一个 test 的这样的一个程序,对吧?项目文件啊,我们现在点击下一步, 那下一步的时候我们就这个地方,因为,呃,我们 q t 在安装的时候是这样的,我们这里面其实就像有一个呃,就像拍摄一样要安装它的解释器,对不对?那么 q t 的话呢,这个地方其实安装的是 q t 的,叫叫做变异器 啊,变异器,那么这个,嗯,变异器是什么呢?就叫做这个啊, mgy, 我们安装的是这个,当然变异器还有其 其他的啊,还有还有其他的,那么这个编辑器的话呢,其实就是 c 家家的编辑器一样的啊,其实就是把我们的 cpp 文件头文件这些东西组织起来,把它编辑成 什么点欧文件啊,等等啊,点欧或者这种啊,像这种这种编意过去的啊,是比较底层的 点或者点 so 或者这这种类似于这种文件啊,那么我们可以看一下啊,变异过去的这个其中的一个,比如说我这个地方,我这个项目不是已经变异过了吗?我这个项目现在是在呃,我们现在直接给他打开啊,打开一个给大家看一下,打开一个看一下,我变异过去的, 让他讲到了这个变异啊,那么变异的路径的话,我们要自己要指定,那比如说我们我这个地方默认会指定 一个路径啊,变异在这里啊,那么这个地方是一个第八个,第八个里面就是我们变异的这个程序,你看这些都是都是点 o 文件,对不对?点 o 的点 o 的啊,那这个点 cpp 里面是你看不到我们的原代码的,都是一些呃,无用的代码 啊,看到的,那么我们就是点欧的这个文件啊,基本上都是点欧的,像这种文件有什么好处啊? 我们知道我们现在很多的拍摄语言开发完成啊, c 语言开啊,是就是什么 c 下载语言加委员,这些开发完成的时候都会有对应的一个编意完成的一个文件,对不对?那些文件很多文件都是可以被反编译的,而且你就, 哎,如果说你没有做好正确的压加壳的话呢?你的原代码程序是很容易被别人通过逆向程序来盗取的啊,那么而我们的这个地方 用 c 语言啊,或者 c 家家语言开发出来的编意完成之后的这些程序是很难背 反反反向工程的,逆向工程的,而且逆向工程出来的这些代码基本上是属于乱码啊,基本上看不到的啊,基本上看不到的,而且因为他这个地方编一下去就比较底层了, 就比较底层了,很底层了啊,所以说,呃,这个,这个是一个好处,另外一个呢,就是我们使用这个 qt 来开发的,也就是他其实是一个 c 加加与对不对 c 加加的一个基础,所以说他的这个程序运行的效率应该来说是 目前我们可以说是最高的啊,非常非常高啊,非常非常高,那再运行再高一点,就是我们用汇编开发出来的,但一般来说不会有人用汇编去做一个这种程序的 啊,你这工作量实在实在太大了,实在是太大了啊,所以大到你无法想象,对吧?更加不会有人用意令去写这种程序,是不是啊?所以那么 基本上我们这种程序最为底层的就直接就是 c 原 c 家家来开发他,他的这个速度是非常非常快,包括我们各种服务器 啊,各种服务器开发的啊,都都是使用这个。那么我们现在,呃,即使这个 qq 啊, qq 的话呢,他绝大多数一开始的时候当然是使用 c 语言,对吧?后面的话呢,也融入了一些什么? c 下巴, c 加,呃,包括一些其他的 一些东西啊,都会融入起来,也也有融入进来,但是他还是绝大多数还是使用这个新家家园啊这种在开发,那么这样的话呢,他的运行成效率是非常相当的高啊, 是相当的高啊,那么我们现在的话呢,直接新建吧, 到这里新建啊,重新新建点一下,嗯,快的,那这里面我已经解释过了,对吧?创建工程啊, s test。 好,我们选择一下桌面上的这个 lgy 有这一块啊,那么这里面的话呢?好,这个地方这样就好了,选择好了这个文件夹,那么这个地方我们默认是勾选的,那么这这其实就是个编辑器啊,大家了解到一个就是一个编辑器啊, 默认就勾选了一个变异器。好,那么我们接下去进行下一步。那这个变异器的变异器完了之后呢,他有个变异的路径啊,比如说他这个地方有三个,三种模式,我们任何的一个,比如说我们的程序,一般来说呢,就是在开发的, 我们一般都会使用就是第八个模式啊,就相当于是他的那第八个模式的话呢,我们就是程序运行的效率相对来说要低一点啊,那么雷厉斯模式的话呢,要更高 啊,愿意投入生产的时候,我们一般来说是雷利斯模式啊,啊,那么这个就是像 pro profile, 就是项目一些文件,对吧?其他的一些文件,那么相当于是工程文件一样的,对不对 啊?那么这个地方的话呢,呃,我们就让他这两个都一起变异。好啊,反正都让他一起变异,都可以变异,那么这个路径变异的路径也可以去选 啊,路径也可以去选。那么这个边一的路径的话呢,我们这在 qt 五当中啊,跟 qt 四当中还是有一点不同啊,不同在哪里呢?不同在于,呃,他的这一个程序啊,不能放在呃,跟我们的原程序不能放在同一个目录下 啊,啊,不然的话他变异的时候会爆错啊。这个地方给大家要注意一下啊,不要放在圆程序的目录下啊,就可以可以放在跟圆程序的同级, 比如说我们待会这里有个 test, 就放到他的同级啊,当然他自动会生成一个同级的,只不过他的名称会比较长,比如的被被被被那个变异过的一个桌面应用程序,对吧?好,那么我们点击下一步,下一步之后我们这里面有三个选项,非常非常的重要,你要注意啊, 看到三个想象吗?看到了吧?那么这里面最底层的是哪一个窗口?就这个 q v, 这个是最为底层,就是一个窗口用程序,那么他是 最里最最底层的啊,最最底层的,那么他的上一层,他的在在后面几层,比如说这是一个呆了的,对不对?呆了的其实也是他的, 他要形成一个 dialog 之前,他首先必须是一个 wedges 啊, wedges, 那么同样的 q men window 也是一样的,想要有个 qmen window 之前还是要必须要有个 q vjx。 那么这两个的一个好处是什么呢?如果说我们 如果这三这三个是有区别的,你再记下来啊。如果说我们想要开发这个像我刚刚的这个地方,刚刚的这个东西一既要有上面的一个菜单导航条, 对吧?菜单栏又要有旁边的,比如说像一些浮动栏,浮动栏就像我们的一些开发工具旁边不是有一个刀刀, 这个叫做道口,道口就像一个浮动窗口一样,浮动窗口一样啊,我们开发工具上面一个是浮动窗口啊,那么,呃, 右岸有我们的这个窗体中心位置主窗体,就像我刚刚展示的不是有左侧的一个菜单,上侧的一个,左侧一个动卡,其实是一个动卡 列出来的浮动窗体,然后上面的话呢是一个菜单栏,对不对?然后呢?中间中间还不是有个位置吗?采集数据什么的,对不对啊?这样如果是这样的一个东西,那么我们开发的时候就使用 qq 门 window 啊,那么接下去的话呢,我们呃如果说是采用的是这个 q 带了的话呢,我们使用的是什么呢?他就是就像我们那个那个那个 a 八那个东西,那个上面我们在展示的时候其实是默认是没有这个叫做什么? 没有菜单上面的一体一个一个菜单选项的,是没有菜单选项的,那么也是呃,我们到时候的话呢,也是需要把界面给隐藏起来的,也就是这个带了个的话,我们其实没有放大缩小啊,他只有一个叉叉, 而我们这个坤妹妹的话呢,我们就像这种程序一样,可以有这个最大窗口,小窗口,对吧?像这种还有个叉叉,对吧?带了个我们就直接是一个叉叉 这个厂家啊,所以我们很多的在我们的这个我们大家注意啊,我们在开发那个天路市程序的时候呢,我们其实是一个个窗梯,然后呢我们其实只需要用一个带就可以了 啊,只需要一个这个这个叉叉就可以了,而且我们要把这个最外层的这个东西要给他隐藏起来,隐藏起来,因为我们稍写进去的时候不允许让他显示是显示叉叉什么的,对吧? 上线进去的时候还像一个窗体一样弹的内两,肯定是呈现内部的内容,对不对?呈现内部我们制作的内容啊,那么我们这个地方我们就使用这个最为基础的 q v 好,那么新建完成的时候我们会发现在这个新建窗体上面同时生成我刚刚所说的三个文件,第一个文件是点 h 是什么文件?哎?读出来头文件,第二个是什么? cpb 文件是叫做什么文件? 原文件 cpb 其实就是 c plus plus, c 加加,对吧?啊?那么 这个名称我们也可以自己来换过来,比如说我们,比如说第一个名称,我们假设第一个名称叫做后后母也可以,对吧?或者捞军登录 是不是也可以啊?啊?那么我们假设是登录啊?啊,那么这个地方勾选创建界面有什么不同呢?这个我们发现如果勾选的话,下面是不是给他按亮了?一勾选是不是就亮了?没有勾选的情况下,就像 只有原文件头和原文件这种形式界面,需要我们自己在我们的这个 cpb 里面去进行创建, 明白了吗?如果你勾选了,那么就意味着你这界面可以进行可视化开发,因为他这个地方你看到这个文件后面有个点 ui, 对吧?可以进行可视化开发啊,那么我们就可以拖空间,拖空间拖到哪里呢?就拖到这里, 就拖到了这里,明白了吧?就是这样拖到了这个界面上。好,那么我们接下去来看到下一步,下一步啊,下一步之后这个地方版本控 我们是没有用到,版本控制系统没有用到,所以默认就是 no, 如果用到的话就是创建一个,那么所谓的版本控制系统的话,就是相当于我们,呃,我们团队协作开发的时候使用啊。呃,比如说我,我今天我开发了一点零版本,对不对?下一个人我开发了一点一版本, 对吧?那么我下一次再开发的时候,是不是要从版本控制器上面把一点一版本下载下来,我在这最新的技术上面再去进行开发, 对吧?这就是所谓的版本控制啊。那么最后的话呢,他会生成这样的一个目录,下面会生成这些文件, cpp、 点 h、 点 ui, 比我刚刚要多了一个 点余爱,对不对?我刚刚是没有点余爱的啊,那么我们还有就是一个 pipro 啊,这个是个工程文件,就相当于我们未必 一样的啊,工程管理文件啊,那么同样的这个地方还有个 cpp 文件,就是一个原文件,对吧? fm 文件,对不对?只不过我们 vb 当中把那个 fm 跟那个 h 和这个这三个文件都集合在一起了, 这里面是分开的啊,在 c 家, c 家家里面我们开发是属于分开的啊。好,我们点击确定完成,完成之后他就会创建了这样的一个界面,对吧?啊?左侧就会开始创建,而且我们所有的 编码编完了,编完成之后,我们只有经过编意之后,他才能够呈现出新的程序来,如果不编意,他还是老的, 不变异,他还是老的,也就是我们 c 家呀。这种程序的话,开发完成之后,你想要让我们的应用程序更新到最新状态,就必须要将我们的元代码统统的给编一遍,编一遍,然后 就会新生成一个新的应用程序啊。那么我们来看一下这里面,接下去我们创建完成之后,界面上是那样的,在我们看一下文件夹里面,文件夹里面首先是一个项目文件夹,接着是接,接着就是项目文件夹里面的这些文件, 对吧?啊?这些文件那么同时会生成一个点 u 的文件啊,就当前的这个用户,那么这个点 u 的文件的话,往往就是在我们跨平台遗址的时候,我们把这个文件给他删掉啊,然后呢 在相同版本下面,我们跨平台移植的时候,他会自动生成一个新的这个文件啊,这个时候呢他就自动兼容了。所以很多很多相同版本的时候,跨平台移植的时候,我们就会采用这种形式啊,采用这种形式这个文件我们是可以删除的, 没有关系是可以删除的啊,那么我们接下去应该知道这几个文件都是用来干什么的了吧?笔记记好没有 啊?好,那么接下去我们来看一下啊,我们生成之后,这个地方他会默认给我们打开了这个 cpp 的文件,对不对?其实上面还有一个什么点啊?头文件,这个是一个工程文件,对吧?然后这个地方是一个 界面文件,这是一个界面文件,我们双击这个界面文件看一下,你看就是一个床体,对吧?我们可以比如说随便拖一个按钮上面啊,这个就是我的按钮双击进去,比如说是刘啊,刘金玉编程啊,很简单,对吧?啊?我们来看一下啊,那怎么样来浏览呢? 怎么样来浏览呢?直接点击这个就可以了,那么点击这个的时候呢,他同时会给你变异的,如果你单独点击这个程这个构建项目,那么就意味着他就是只是变异,并不运行。这个是一个调试嘛?大的嘛?有个 有个虫子吗?对不对?调试运行啊,那这个地方我们就是一个既编意用运行啊,我们现在编意将运行啊,点击他啊,那么这个是自动要教你保存一下啊,保存 co 啊,保存,那么这个时候呢,他就会看到你,会看到你这里面, 呃,那这个有个构建的一个进入条,对吧?进入条,那么这个时候边边一边输出,我们马上就输出了,你看这个程序就出来了, 你看是不是很简单,很简单啊,那么开发的时候稍微复杂了啊,第一个程序是很简单的啊,第一个程序是很简单的,当我们如果想要设计这个界面的话呢,我们这个地方,比如说想要更改一下他的这个,呃, 一些相关的,那这个这个是属于他的一个这个对象的名称啊。啊?对象的名称,比如说是不能改,比如说想要改他的一个,呃,抬头啊,比如说抬头,抬头就是 啊,假,比如说我们把它改成 q 啊, qq, 假设给他改成 qq 啊,那我们继续运行,他又要重新变异了啊?每次都要会重新变异的 啊,从一变异之后,第二次变异稍微快一点啊,第一次变异比较慢啊,然后这个地方是不是又改成 qq 啦?同样的,我们要知道啊,我们这个 q t 里面在使用的时候啊,所有的这些属性 能够修改的地方,我们都能够通过代码修改,这是不是跟未必是同样一个原理啊?哈,所以你只要有这个编程的思想,很多后面用的时候会发现有点类似,对不对 啊?会有点类似,只不过语言不同啊,那么我们来看一下啊,这个地方他有几种模式。 qq 的这个界面,首先是一个欢迎界面,我们就是新创建项目,对吧?然后这个地方编辑,编辑就是呈现项目 那些项目以及代码,项目以及代码,那这个这个 ui 文件其实是一个什么呢?就是一个参谋文件, 看到了吧?设置定义他的一些,呃,什么宽高啊什么的,对吧?那么设计界面呢?就是我们可视化开发啊,左侧就是一些空间, 对吧?那么这个第八个界面的话呢,就是我们在调试的时候,他会调到这里来啊,会调到这里来,那这个地方还有个叫做项目文件啊,项目文件的话,我们就是这个地方有管理,管理我们的一些很多的一些项目的一些环境啊 等等,这个地方有很多代码控制啊等等啊,呃,项目变异器啊,对吧?有很多啊,或者是你看这个地方,比如说让你是采用什么模式啊?变异出来到底是怎么样子的啊?这个地方默认我们这里是一个第八个,对吧?第八个这个模式啊,然后这个地方还有一些 q make, q make 一般来说就是,呃,让他让让我们这个地方去生成一个啊,你看 q make 什么呢? q make 的是这个东西啊, project, 对吧?这里面有一些相关的配置,像项目相关的配置,把它生成适合于我们当前系统环境的一些文件啊,一些文件,那这个魅可的话就是 真正的变异程序了,对吧?变异程序了啊,那么其他的也不需要管了,我们这边只要明白这些就行了,这个很重要啊,这个这个配置文件很重要啊, 这个项目配置完全很重要。这个地方我们往往采用,比如说我们想要呃类写一个类似于 qq 消息的,对吧?啊,那么我们这个地方就要加入相关于 qq 消息的这个 soke 的的这个库。内裤, 这个内裤,这个内裤就是 c 家家语言里面的这种内裤啊啊,他就给你编一好了,这里面已经有了,你只要把这个内裤给你录进来就可以了,就像拍摄 里面我们就用 pot 抹布库啊。呃, gs 里面的话,就像我们这个 htm 页面上面有个 link 过来,对吧?类似于这种东西啊,类似于这种东西,对吧?那么呃下面的话呢?一些呃配置文件,比如说这个地方,我给大家简简单介绍一个比较常用的啊, 什么什么配置的模板?配置的目标,这个目标的话呢,基本上是属于深层的一些文件啊,深就深层的,你的项目,呃叫什么名字? app 叫什么名字,对吧?我们这里面是 test, 那么我们这个默认编意完成之后是怎么样的呢?大家可以看一下,默认编意完成之后就是在我们同级目录下面, 同级陌路下面啊啊,这就是这个嘛,对吧?刚刚很长的这个名字啊。第八个,这里面点进去看到 txt, 对不对? tst, 那么我们直接可以打开这个 tst 的啊,这里打不了,打开不了,为什么?打开?不 是因为他的环境还不够,我们需要把 qt 基础的这个环境给考进去才能打开,也就说默认情况下我们需要考很多,比如说我这里我给大家写过一个叫做一个一个 tcp 的啊 啊? tcp 的一个程序,用 qt 来写的,有个可爱的,有个骚啊,对吧?啊?我之前之前那个写的时候写的,那么写完之后呢?默认是打不开的,你要把 qt 的那个库下面考考很多这个 dl 这种这种程序,对吧?你所有引用到的东西全部要给他考过来,包括他的基础环境。普兰特啊,这个叫做普兰普兰的风, 把烤过来,烤过来之后你就可以用了啊,就可以单独的去打开了。默认情况下是不能单独打开的啊,不能单独打开的,要,要把这些东西都给烤过来,这这些东西在哪里呢?就是在你的 qt 安装路径下面是有的啊, qt 的安装路径下你要去找啊,那么这个地方我们大家需要的时候,到时候自己到路径下面去找。 好,那么我们再来看到这个地方有一个地方,我刚刚要提一笔啊,看到这里面这个地方有什么不同呢?这个地方 这个是 cpp 文件,是一个原代码文件,对不对啊?我们看到这里面要注意啊,上面是一些包含文件包含,比如说包含了一个头,包含了我们的界面的一些文件操作,对吧?那么我这里要提的是什么呢?这个是一个类名 这个是一个类名,那么呃,这里面的话呢?呃,他是记,他是要继承了一个什么呢?继承了一个 q, 你看这个,这个,这个是冒号,是代表他继承,也就说他基础要拥有的是一个 qv 的人士,他是一个窗体,他只有继承了这个 qvid, 那他才能够被渲染成 这个窗体,他才拥有这个窗体的一些功能啊,要不然是没有的,那么不管这些啊,我们单独的看这一款这个括号,反正我们这个地方我们新建完成一个一个界面的时候,他会自动生成,这不是都是会自动生成的吗?啊?你想要快速入门的话呢,首先要记住的是这一块东西是什么? 这啊,你先不管啊,比如说这个地方是载入你的这上面这个界面吗?对吧?载入这个界面吗?我想告诉你的是,这个地方就是我们之前所讲过的构造函数, 看需要个球构造函数的地方,哎,此处为构造函数的地方,只要我们下一次扭一下这个窗体,这个窗体,我比如说我们要打开多个窗体的,我们只要扭一下一个新的泪,我们新的窗体不就出来了啊,同时第一时间就会加 在构造函数里面的代码构造函数里面,这就我们可以看成是构造函数啊,看成构造函数 就是一个类的构造函数啊。那么如果说我们单独写一个类的话呢,我们其实是他的相同名称的,如果我们单独写 c 加加的时候啊,介绍呢是一个类名,可拉斯 name, 对吧?后面的话呢,是相同的, 跟类名相同的。这个函数的名称作为他的一个构造方法啊,而不是单独用这个 ctrl 加个头了啊,这个语法上面又有点不同,但是大家有这个思想对吧?有了思想之后你才能够后面去做啊,构造函数。 好,接下去我要给大家讲到的,上次给大家提高提到过一个,当一个类被消亡的时候,他知性的是一个什么函数,记得吗?哎, 机构函数,对了,机构函数,上次我说过机构函数用什么符号,是不是用这个这 发?哎,所以说我们以后看到这个符号的时候,那么这里面我们其实就是属于虚构函数啊,虚构函数 处啊,吸购函数数,可以看出看成一个函数的就相当于这这个类我要另一个类的时候就会执行这个部分,当我们这个类被铃木的时候, 或者是我得力的这个类的时候,这个类的扭出来的这个对象的时候,这个对象我要得力特的时候对不对?那么与此同时他会执行西构函数出, 对不对?哎,那么这就是这个类的一个生命周期啊,生命周期。那么关键是 c 加加语言啊,并不会马上执行这个东西啊。 c 加加语言的入口在哪里? 在这里内涵说明白了吗?这是路口,也就说 只能所谓路口有几个,但不能选择啊,只能有一个啊,那么这个地方你要记住啊,你要记住函数程序的路口,函数 路口函数是妹啊,而且且整个应用程序啊只能有一个,否则要报错 只能有一个,不然的话是无法被变异通过的。无法被变异通过我是不是就爆破啊。那么同学们在写这个 q t 的时候啊,后面你会发现即使你会很多的东西, 然后写的时候也发现是各种报错啊,后面报错会报的很刺激啊,你各种认为是可能的,可能正确的都会认为是报错,这是因为我们对语法的一个不熟悉啊,不过,呃这些没有关系,后面慢慢就会习惯了啊。 呃,那么我们今天的话呢?呃,这个课程呢,就给大家讲这一些啊,主要是对一个课程的一个 qt 语言啊,也不能说是语言啊, qt 是一个什么? 不要说错了啊。框架啊,谢佳佳框架的一个入门啊,主要是对他的一个入门,然后呢大家回去把这个框架给装好,写自己的第一个 qt 应用程序。 啊,那就这个吧,托个东西让他出来第一个好不好?我们下一节课再来给大家讲这些代码啊,我们今天这节课就到这里。


在安装 padsen 时没有勾选环境变量, 安装完成后按 close 关闭窗口,再按键盘 win 加二,打开运行窗口, 在运行窗口中输入 cbd 后按确认, 打开 dos 窗口后输入 pads 后按回车,没有显示 pads 版本信息,我们需要配置一下 python 环境变亮,右击我的电脑,点击属性, 找到高级系统设置,点击高级系统设置, 在系统属性中选择高级,点击环境变量,在环境变量中找到系统变量,双击 pass, 然后点击新建, 输入我们安装时的路径,点击确认环境配置完成。 打开我们之前配置环境前的 dos 窗口,输入 python 是不会显示 python 版本,我们需要关闭配置环境变量前的 dos 窗。 好, 重新打开新的 dose 窗口,输入 python 才显示 python 版本信息。

大家好,欢迎来到日月光华的拍摄开发环境配置教程,我们专门讲这么一个课程啊,来介绍一下安乐康的安装和助喷都都不可的使用,因为在我的课程当中,无论是我们的基础爬虫还是数据分析记忆学习以及特色辅路深度学习 curis 跟等等我们都使用的布可做演示,大家也看到周潘的布可非常的方便易用,对初学者也很友好,所以呢我们简单来介绍一下周潘的布可的使用技巧以及安能康乐安装。 首先我们来看一下什么是安德康的,安德康的呢,他是一个拍森的发行版本,他呢包含着拍森,这一点非常重要,如果说你的系统或者说你以前安装过拍森的话,当你再次安装安德康的之后, 你就拥有了两个拍摄,这里也是提醒大家,你安装了还能看到之后呢,不需要再去单独的去安装拍摄,那么还能看到呢,它主要是一个数据分析方面的一个拍摄发现版本,它包含了一百八十多个这样的科学包以及依赖性。 俺能看到呢,他支持雷尼克斯麦克 windows, 他包含了众多流行的科学计算和数据分析报,安能看到和周潘多的布可已经成为了数据分析的标准环境,那周潘多的布可呢?是安能康呢,在安装的时候会一并安装的,他是一个基于外部的交货式开发环境, 一会呢我们会介绍到。首先让我们看一下安德康的下载,安德康的呢,我们可以从官网下载,这里是他的官网,这里呢也可以可以从清华镜像去下载,大家呢不用去记这 这个网址啊,回头我会把这个 ppt 呢分享给大家。那青花镜像呢?我们打开呢就是这样子,这就是青花镜像的一个还能看到的这个网站,这个网址我们拉到最后他的最新的这些版本,到最后 这里我们应该下载哪个版本呢?你要下载与你的操作系统对应的版本,比如说你是雷女克斯,那你就需要下载雷女克斯的版本,那另外雷尼克斯的版本又分为三十二位的操作系统,还有六十四个操作系统,所以如果你是一个六十四个操作系统,你需要下载这个, 我还能看到三五点三点一,然后雷尼克斯杠 s 八六杠六四,这就是这个雷尼克斯的版本。那如果你是麦克的话,你可以下载这个 ppg 文件,也可以下载这个 sh 文件,都可以。那如果我比如说我的电脑,我是一个温度操作系统温度的十,然后呢六十四位操作系统, 所以我就我就下载这个啊,那个三,这个温度四 s 八六杠六四。那如果你是三十二,你就下载这个网址啊,只有位数的,怎么看呢?你可以比如说温度,是吧?你可以从你的我的电脑点击右键出来,这里有个系统类型的,有个六十四位操作系统 啊,这就是这个文件下载,下载之下来之后我们应该如何安装呢?我们分成 windows 和 linuse 来安来看一下。那温度线呢?我们安装下载下来之后,他实际上就是一个 ese 文件,比如说这个 是一个一 s 一文件,那我们可以双击他来安装,双击来安装这里呢,然后点 nice, 然后 nice, 这里这些呢?所有的东西不都不需要变化,这里我稍微变化是因为我以前安装过了,所以这里你也不需要变化。继续点 nice, 这里有一个选项,就是这里呢有两个选项,我们来看一下他什么意思。下面的这个呢,就是说我们把安德康呢作为默认的拍森 啊,这是下面这个如果你打勾的话,那么安的康的呢?这个拍安的康的呢,就会作为默认的拍摄版本,那这个时候如果说你又安装了之后,比如说拍叉、 vg、 四六六,那这时候他们会默认使用安能康的这个拍摄, 那如果说第上面这个呢,就是添加俺能看得到系统环境,那如果说你勾上的话,那俺能看到的就会添加到你的系统环境,这个时候添加和不添加有什么区别呢?如果你把俺能看到添加到你的系统环境, 这个时候你可以在你的摄入当中,或者说你的命令行当中直接进入到安能看到的拍摄。那,那比如说我这里打勾了啊,这个时候 我们打开迷你号,如果安装完毕啊,假如说我们已经安装完毕了,这个时候我们输入拍摄,现在我们打开的这个拍摄呢,他就是 iphone 的这个拍摄, 这是你添加的系统环境,如果你没有这里没有勾拍森的话,没有勾这个俺能看到的话,这里没有打勾的话,那这个时候假如你的系统没有安装第二个拍森啊,那你在这里你输入拍森的话,他会不认识这个这条命令,他会并不认识这条命令, 这是一个区别,所以我在这里推荐大家,如果说你是初学者的话,那我推荐大家这两个都打够,这 这是一种最简单的解决方案,你说对于初学者友好的解决方案,如果说你初学者,你都打勾就可以了,就默认使用拍摄,而能看到这个拍摄就 ok 了。那如果说你是有个,比如说你你本身使用的 英语课程,或者使用了麦克,那这个时候你就你也可以不打钩啊,这里使用了麦克的话,这里可以不打钩, ok, 这就是我们所说的这个点,其他的点呢?都不需要,然后点内四套, 然后一直下去就 ok 了,一直下去就 ok 了,你们都这里稍微有一点点要注意的地方,就是说安装到最后的时候啊,他会等待一个,等待下载中这个麦克 so 夫的 vizus 丢丢,这时候你直接撕开点亮撕开不就可以了,不需要安装这个东西, 因为他非常非常的慢。好的,那么我们安装好了,比如说这温度平台,我们安装好了安能康的,咱们如何来打开这个拍森呢?一旦你我们温度,比如说温度是我们安装好了安能康的,如何打开拍森呢?这时候有两种,有就有两种,两个要注意的点了。 假如说你把这个安能康的添加到了系统环境,那这个时候很简单了,我们只需要打开迷你号,那打开迷你号,然后呢输入打开这个迷你号温度似的迷你号,然后我们输入这个拍摄,这个时候就进入了这个温度似的拍摄, 就就进入了排赛,那假如说你没有添加到系统环境,那这个时候我们安娜看到他也默认带了一个安娜,看到普罗姆特名领航,我们可以搜索这个, 在这个程序里面搜索。你比如说在这个啊,在这个程序里面搜索这个安南康的啊,搜索这个安南康的这里呢,搜索这个安南康的 pro, 这个安能可能 pro 就是一个安能康的自带的命令行,这个命令行他的特点就是他会自动进入安能康的这个环境基础环境,所以这个时候 我们可以确信他一定会进入安能康的拍摄好,这时候假如你没有添加系统环境,那你就从右左下角这个搜索这里搜索这个安能康的,搜索这个安能康的,然后呢输入这个安能康的, 然后进入, ok 啊,这样的话我们可以进入派森,进入派森,或者说进入 ipad 森啊,都可以的,等等。好的,这就是我们所说的进入安装,安装完了之后进入派森解释器的方法,然后我们来看一下 linux 这个 平台他应该如何去安装,另一个自己安装的更简单一些,我们只需要使用巴士安装就可以了,那比如说我们就是使用这个巴士还能抗打这个,你下载的这个 suv 是文件的一个 路径就可以了。那你如果说你是当前文件夹,那你直接使用八十啊,能看到这个他这个名称就 ok 了哈,然后呢他会有一系列提示,他会在中间啊,他会为你 是否需要添加到环境变量。那这个呢?我们在雷尼克思想,你可以直接输入,输入 y, yes, 你就输入 yes 啊,输入 y, 输入 yes, 然后呢他会按天要新的黄金变量,最后呢就是三克油福因斯图就是你已经安装好了,那么雷尼克斯安装呢?还有注意的一点就是安装完了之后呢,你要重启一下这个实验啊,才能够才能看到,才能够生效。 那至于如何进入排线,那很简单啊,你直接进入 cl, 因为你已经添加到了系统环境,你已经添加了系统环境变量,所以你直接进入 cl, 然后输入排线就可以了啊,然后呢就是这个 麦克现在安装,麦克现在安装其实跟雷尼克西安装一样,你可以使用巴士来安装,也可以使用下载那个 pk 机文件,这个 pk 机文件,这个麦克 os pk 机文件,然后双击他也安装了,那这个安装过程就跟温度下这个 ax e 文件安装呢非常类似。 好的,这就是我们所说的这种安装啊,安装好了之后,那么安能看到他带给了我们什么呢?首先我们第一点,我们刚才看到了安能,看到他已经给我们安装好了拍摄,然后我们可以通过这个安能看到 promax 啊,那看到普罗姆斯这个命令行呢,进入到啊这个拍森啊,然后呢他还给我们带来一个增强的拍森解释器,增强版的拍森解释器,那我们这个原声的拍森解释器呢,就是三个冒号,那么增强的 这个叫做 ipads, ipads 呢,是一个增强版的拍摄警示器啊,他有这种代码提示啊,内型等等功能。那么我在这里呢,并不会详细的讲解这个监视器, 我们会待会呢,着重的去讲一下周派对的 book 这个命令好好的,那么哎呢看到他安装好了之后啊,他会为我们提供一个包管理工具, 叫做康的这个曝光的工具,那这个观众曝光的工具啊,他非常非常的方便啊,他非可以让我们非常方便的去 查看我们,比如说,呃,查看我们这个安装过哪些库,然后呢?我们可以使用康达来安装很多库,比如说康达意思到什么,康达 fd 的什么,然后去升级一个库,康达水幕去 卸载一个库啊,嗯,那么这就是一个康的这个包管理工具,他比派普要更加的强大,那么为什么呢?因为康纳这个管理工具,他不仅可以安装拍森的库, 他还可以安装很多其他的,比如 c 圆的库,这是他的一个强大之处,这个强大非常体就体现在,比如说啊,比如说我们需要去安装腾斯福禄的 gpu 本本啊,腾斯福禄 gp 本本, 这个时候他会需要你去安装一些依赖下,那这里你就知道他需要按下依赖下,比如说 cudn 这样的库啊,这样的依赖库以及 cu 啊,比如这个 cudn two 这样的包, 这个时候我们就可以使用康纳来安装康纳,他会帮助我们一并去安装这些非派性的这些依赖库,这点是非常非常强大的,所以是, 所以就是康达因此道,比如说天丝福禄啊,比如说等于杠机 pu, 然后我们等于这个 二点零点零啊,那就使用康纳安装,这个时候他会把所有的依赖想把我们安装配置好,那假如说你没有使用康纳兰安装,你使用派不安装派不安装了,他只能安装派森的啊这些库。然后呢你就需要手动的去自己去 下载这个 cudncuda, 这个 cuda, 然后自己去安安装,然后,然后呢下载这个 cude tookit, 然后自己去配置, 这就是这个康达管理工具。那么我们下一节课呢为大家再继续为大家简单介绍一下这个康达管理工具啊。好的,我们这节课先讲到这里,这节课我们主要讲这个安装。谢谢大家,再见。

hello, 大家好,今天给大家演示一下在 q t designer 中使用水平布局, 下面介绍他的两种方法。第一种方法呢是先拖动空键,再使用水平布局。第二种是先拖动水平布局,再把空键加入到水平布局当中。 下面打开 q t designer 的界面。 好,下面先演示第一种方法,先拖动空键, 比如说先把 button 拖动在到这个界面当中去,第二个 button 三, 下面把三个空间一起来选中, 单击右键选择布局,再选择水平布局。好,这个时候三个空间就已经是水平布局了。好,下面介绍第二种方法, 就是先拖动水平布局,再把空间加入到水平布局当中,先把删除掉在左边这里我们选择水平布局。 好,这时候把空键加入到水平布局当中,这个是 button 一, 第二个 button, oh, 把空间拖动到这个水平布局右边的时候,这空间右 右边的时候,他会出现一个蓝色的线,然后再松开鼠标,嗯,这时候他就加入到水平布局里面了。 好,这是第二种方法。好,今天就演示到这里。

拍神啊,一个是 swm tex, 看见没有?来看见同志们请扣一啊,这有三个哥们,有三哥们,那这三个哥们的话呢,我们在后面的话呢,会用的会非常非常的多,那我们挨个的来介绍一下这三哥们分别是个什么东西啊?然后我们带大家来安装, 首先的话呢,这个拍送的话呢,大家大家不用讲了啊,这个拍送的话呢,这个东西不用讲了,这哥们话呢,他是我们的这个呃开发的这个什么环境技术环境,就是说我们拍送想要跑起来,他是需要依赖这个环境的,叫做拍送的解释器 啊,那么拍唱的是什么呢?拍唱他是写代码的工具啊,写代码的工具啊,所以呢,我们要用这个写代码用这个干嘛呢?用这个的话呢,就是代码会在这个上面运行。这个撒布伦泰克斯是个什么东西呢?撒布伦泰克斯他相当于 就是一个记事本,对吧?就好比说你电脑里面的那个记事本,但是呢他比咱们的这个记事本啊要稍微好用那么一点点,理解我的意思吧。所以的话呢,就是我们到后面的话呢,去看一些拍送的代码的时候啊,没有必要再启动拍唱,毕竟这个软件大 啊,我们只要启动一个这样的一个撒布兰 tex 啊,就可以看一些文本了。 ok, 好了,我们首先来讲一下啊,怎么去安装啊?那么当然把老师的这个下载的这个安装,如果说你们想从官网上面下载的同学啊, 那么老师这里的话呢,也准备好了,如果你们想要从官网上面下载的话呢,没有地方都没有关系,找这位老师啊,啊,找那个柚子老师啊,那我这里面话也有教大家的这个教程,就是怎么从,怎么从什么呢?怎么从这个官网上面去下载啊,也有你们自己的话呢,找一下柚子老师也可以领取。 那我今天的话呢,还是教大家呢,我就不带大家下载了,因为这个东西的话呢,下载需要有点时间,我就直接安装没有问题吧。那首先第一步的话,我们先安装这个拍摄呢啊,来我们先双击一下他, 双击一下以后,同志们你看好了,这里面有两个选项啊,那么这里面有两个选项,注意,看好了,第一个选项的话呢,是什么呢?就是默认的安装方式 啊,理解吧。这个的话呢就是自定义的安装方式啊,那么这一块还有个勾勾,看见了吗?叫做 a d d pass 啊, ps, 三点八 to pass, 咱们呢把它勾选上啊,先把它勾选上,这边选择自定义安装啊,你点这个也可以,都没有关系,我们选择自定义安装。 这个的话呢,就是你要安装它里面的哪些工具,那我们直接点击 next 下一步,好,到这一步以后, 同志们到这一步以后,这个地址大家看见了吗?大家,这这个看见吗?这就是你的这个软件安装的地址啊,因为我这个云浮器啊,他只有一个飞盘,能看见吗? 但是呢,我一般的都不会把软件安装在 c 盘,因为 c 盘越来越大的时候啊, c 盘越来越大的时候,你的电脑运行就是可用空间越来越少的时候,他的使用空间就会越来越少,所以的话呢,我们可以选择什么呢?比如说我点击下这个哥们,那比如说我在这个此电脑, 你看我这里面还有个青椒云盘,是地盘,对不对?我可以,我建议大家呢可以建一个文件夹,比如说我们建一个文件夹,叫个名字,叫做我们的 program, 对不对?就是我们的程序。好,然后呢,我们就选择在这个里面点击进去, 我就选择这个文件夹,理解我的意思吗?或者说我在这个文件夹里面我再做个分类啊,比如说 d c 盘,这个这个 d 盘,这个我们刚刚建了,我在里面再新建一个叫做拍森,什么三三八,对吧?因为是三点八的版本吗? ok, 好,然后呢?嗯,传遍名啊,给他一个叫做拍摄,然后三八回车,该项目不在这个云浮,这还是有点问题啊,好,我们把这个东西给他删了吧。 嗯,好,稍等一下啊,哎,这,啊,这有了啊,这已经有了, ok, 哈,好,这已经有了,我们先把它取消掉,然后我们重新选择一下 c 盘,然后这个 d 盘啊,然后在这个我们的 program, 然后拍成三八。 ok, 好,然后点击确定,就是我们把这个尽,尽量不要把你的程序安装在 c 盘里面,因为安装到 c 盘里面会占用 c 盘空间啊, 好,然后呢点击这个什么呢? inside 啊,点击安装。 ok, 好,那么这个时候呢,他就开始安装了。 好,稍等。那有的同学的话呢,可能安装到这可能会失败,可能会失败啊,怎么解决这个问题? 很简单,就是你右键使用管理员身份运行,能理解吗?哎,能理解,同志们请扣一啊,就是赋予他最高权限啊,所以呢,如果说你到这一块,你发现你安装失败的同学呢,你就右键使用管理员的权限运行啊,就可以了。好,我们稍等 一下吧。这哥们啊,稍等一下。这哥们啊,因为这个云服务器啊,可能呢,会稍微有一点点的这个慢,因为他配置不是很高。 好,稍等一下,那么稍等在这个时间段之内的话呢,我们同样的啊,也可以去什么呢?这个时候我们同样可以去安装一下这个 拍岔马,那么这个拍岔马也好喝,或者说这个撒布量太克斯也好啊,这两个工具呢,他都是用来写代码的, 那么有人说,哎,老师,这哥们都是写的码的,两哥们有什么区别呢?对不对?首先跟大家讲啊,撒布量太克斯,我们在后面使用它的时候,更多的时候把它当做一个记事本人来用 啊,厉害吧,就写一些简单的代码,拍唱的话呢,我们到后面的话呢,会写一些大型的项目的时候,我们都用拍唱,包括大家未来在企业级的 开发当中,我们更多的还是以拍唱为主啊,所以呢,大家呢,还是要学会拍唱的这个使用啊。 这个安装确实云服务器啊,可能会慢一点,那我们先不管他,我们安装这个撒布兰泰斯好不好?在安装这个的同时,我们同步安装一下撒布兰泰斯,来双击一下,一样的啊,同样的更改一下这个地址。 close 是安装失败了吗? 呃,我不知道你是什么样子的,如果你安装失败了,还是一样的右键用管理员身份运行。 ok, 同样的,我们在这边的话呢,在这边的话,我们把它安装到这个,什么安装到这个刚刚的这个地盘里面来啊?我建议统一用一个文件夹的话来进行管理啊,就 ok 了。好,然后呢,同样我们可以在上面的话呢, 我们可以同样的话呢,直接把它安装到这个里面来,看见吗?地盘啊,然后点击, nice, 下一步,这个什么意思啊?叫添加到系统 右键啊, ok, 我们点击呢,我们就不用管了啊,直接下一步直接赢 set 啊,直接安装 好,那么撒布兰泰克斯的话呢,安装还是比较快的啊,那这个时候撒布兰泰克斯就安装好了,那么安装好了以后,同志们大家注意看 沙滩泰迪斯化呢,他的桌面上并没有那个快捷图标,所以的话呢,你要找到什么呢?你要找到, 找到这个撒布兰泰克斯的这个安装沐度下面来,然后呢,这块是不是有个撒布兰泰克斯,然后这个点 e x e, 你把它呢?右键,同志们把它发送到我们的这个桌面上面去,懂我的意思吧?看不清吗? 这看不清吗?同志们,手机用户横屏观看啊,同志们能不能看清右键啊?然后 发送到不装那个什么 tax 的不行吗?我们所有的工具都可以不安装啊,都可以不安装,但是你最好跟我一样好不好? ok, 那么当出现这个界面的时候, 当出现这个界面的时候, successful, 就说明你的拍摄已经安装成功了啊,就说明你的拍摄已经安装成功了。 ok, 好,好,那我们现在的话呢,撒布拉太子也安装成功了啊,然后呢,我们的拍摄也安装成功了, 那么拍子安装成功了,你首先你要检测一下,怎么检测呢?同志们,按住你的 windows 键加 r 键啊,按住你的 windows 键加 r 键,弹出来一个黑窗口,弹出来一个小窗口,看见没有? windows 键,知道是哪个键吗?就是你那个键盘上面有一个四个方格的那个啊,输入一个 c md 超回车,然后在这里面输入一个拍摄回车。好,当你在这个里面的话呢,出现了你这个拍摄的版本,比如说拍摄三点八的时候,说明你这个拍摄已经安装完了,理解我的意思吗? 好,这个有没有问题啊?到目前来之来讲,有没有问题?就是我们的 pass 的安装和这个啊,撒布兰泰克斯的安装。

哈喽,小伙伴大家好,欢迎收看刘静编程拍摄高级进阶教程第三期 pyqt 五以及这个于 qt 点赞有的一个对照分析啊,那么我觉得这样一节课程的话呢,对于我们刚开始来学习这个 啊 p y q t 五的话呢,我们应该来说是非常有必要的啊,因为我们有些小伙伴在开始做的时候,实际上就不知道如何把这个 p y q t 五,也就是说这个 q t 的设计的这个环节与我们的这个呃 q t 五 这个 pyqt 五这个代码相对照哎,这里设计的东西跟我们那边的这个代码到底有什么样的关系啊?这一层理解的话是非常非常有必要的啊,那么之前的话我们已经给大家讲过了,我们这个呃如何来搭建 这一个啊?用 py trump 对吧?以及 pyqt 五再加再加上 pyuic 啊,这个实际上就是 pyqt 五啊拍死的一个变异器对吧?当中利用的是 pyqt 五的一个变异模块来将我们的这个 qt 点三个啊,也是这个 qt 的这个界面设计的 ui 编意城,这个什么 py 文件啊, ui 文件编意成 p, 哎,其实说实话应该是一个转换成 py 文件对吧?那么这样一个过程转换过去的代码对应啊,我觉得我们还是非常有必要啊,把它具体其细节分析。那么上一节课的话呢,我们仅仅只是对 qt 五啊做一个简单的了解,然后呢,我们做了一个纯代码的一个分析,对吧?那么我们来了解到的是呃 pyqt 五的一个可视化界面环境 搭建,这是我们之前所学到的啊,然后我们上一节课的话,我们简单的写了一个,这个用 py qt 五啊,呃,写了一个这个代码,这个代码是什么样的代码呢?就是一个 ui 的代码啊,也就说是界面啊,做一个界面 啊,这相比我们之前的这个 tk 啊,来写这个界面,实际上大家看看啊, tk 的话,我们导入的是 tk 的库,对吧?而我们现在写的是 pyqt 五的这样一个界面的话呢,我们导入的是这个 pyqt 五的这个库啊,无非就是导入的库不一样。 然后完了之后呢,我们这个 pyqt 五的话呢,它的功能的话更加的强大啊,因为我们这个 py 啊,它的发展历史应该来说是非常的早啊,可能好像我印象当中可能比加我还要早,所以啊,它的这个 qt 的一个发 qt 的这个发展啊,它的这个底层的这个 c 加加的库啊,实际上是 很早很早的,对吧?他就已经积累起来了。那么 c 家的这个这个库啊, q t 五大家可能还不太清楚啊,他这个 q t 五的这个库啊,他不仅是基于这个,哎,有有应对于这个拍摄啊,拍摄的话我们现在知道啊,一处编影也是处处编影,对吧?也处处都可以使用啊,它是一个解释型的一个代码啊, 那么他可以在苹果平台上面去用啊,可以在我们的这个呃 u 啊啊,这个什么 windows 平台上面去用啊,也可以在我们的其他的 mac 电脑上面去用啊,这些都可以去用。那么这个 pyqt 五的话呢,实践就是这针对于我们的 呃, qt, 针对于我们的这个什么拍摄的这样一个代码来进行翻译的这么一个库,当然啊,既然有针对于拍摄的代码了啊,所以我们的 qt 啊,同样的还有针对于贾瓦的代码,对吧?将我们的界面设计成 是吧?加我的变成加我的东西,对吧?然后呢我们再加我,再进行加我,设计完成之后,我们就可以再进行什么呃,具体的代码一些操作怎么样?这是界界面的一个设计啊, ok, 也就是说我们这个 qt 啊,实际上大大的对我们的这个可视化界面啊的这个设计啊,应该是取到了非常大的帮助啊,他有很多很多的空间去可以简化我们的这个分析啊,简化我们的设计,对吧? 通过我们前面的这几集的代码的话呢,已经给大家了解到了我们这个界面该如何去设计的啊,以及他旁边包含了一大圈的这样一个呃,这个这个呃叫做什么 一大圈的,这这这这这这这空间对吧?这空间他都已经做好的啊,那么我们直接使用就行了,接下去的我们的这些时间的话呢,就是要针对这些空间啊,慢慢慢慢的一个个去进行解析 啊,那么我们呃之前的话,我们知道简单了解过这个 pyc 啊,是怎样去转换成拍神的代码的啊?通过这个拍神的一个呃,拍神拍神编辑器去调用我们这个 pyqt 五的一个代码 啊,一个一个模块啊,来进行转换的,对不对? ok, 那么我们首先我们今天要了解到这个对照分析的时候啊,我们这不是要将这个 pyqt 五的这个代码于 第三个这个代码进行对照分析嘛,对吧?我们如何来进行对照分析呢?我们在对照分析之前,我们先来了解一下一个空的这一个 q t 五的这个 啊,这个界面设计的这个程序对应到我们 qt 五的 piqt 五的这个代码到底是怎么样的,哎,这是非常有必要的,我们要,哎,我们来了解一下这个空的代码到底是怎么样的啊,以及我们这个通过手工去 编写纯代码的这个方式啊,是怎么样的,对不对?我们上一节课的话,已经通过写了第一个这个 pyqt 五的程序,对吧?我们通过利用这个 vigit 啊,利利用这个 vigit 啊 q placation 的话,就是一个进程,这个程序的一个进程,对吧?那么我们呃来写了一个 q vigit 啊, vigit 也就是说是空间啊,这空间的话,窗体里也是可以继承这样一个空间的,对吧?那么 我们来对我们的这个手工纯代码的方式就可以有一个, 呃,写出来这个 gui 的一个界面啊,这是一个空的一个程序,这是我们上节课写的啊,当然还有一种方式就是我们通过这个 qt 点三个啊,这样一个设计来针对性的自己可视化的一个界面规划,对吧?哎,出来的一个界面啊,这个 的话出来之后就是一个类啊,这是我们之前也是了解到的啊,那么我们呃需要这里需要的是要理解啊,我们这个 q t 点三啊, q t v 啊,它是一个基于所有空间的这个积累啊,它是包含窗体、空间按钮、文本等等的这样一个 一个积累啊,这个积累是什么意思呢?其实就是负累对吧?他是包含某个窗体的对吧? ok, 那么我们今天啊,马上来制作一个空的窗体的程序的样子啊,我们通过 qt 点三个的方式来进行制作啊,我们来看一下,有的小伙伴肯定啊,已经在之前的工作当中啊,已经已经啊,已经就是了解到了,对吧?你这个怎么去做啊?那么我们先把这个上一个程序给删删掉,我们重新来制作这样一个界面啊,好了,那么我们来看一下, 这一次我们是第三期啊,我们来制作一个第三期的这个 qd, 第三个, ok, 我们来进行设计啊,设计的话呢,我们有两处,第一处我们是从这个项目地方右键,对吧?然后找到什么就找到这个, 哎, external tours 啊,一个地方啊,然后找到 qd 第三个,对吧? qq 第三个另外一个地方啊,还有一个地方就是在这上面啊,工具栏 托尔攻击栏,托尔攻击栏,这个攻击栏这里呢,有一个叫做 external 啊, torse, 对吧? qt 点三个啊, 那么小伙伴们我们现在的话呢,我个人觉得我们在编写这个 py charm, 在使用的时候呢,我们进来已经进阶到啊,慢慢慢慢从零基础啊,慢慢进阶到高级,到进阶到高级的时候呢,有的小伙伴目前,呃为止可能还在用这个中文,对吧?中文的这个呃,编辑 一起啊,中文的这个开发环境,实际上啊,大家要知道啊,用来用去是这几个英文单词,对吧?所以我建议你也不需要再去把它翻译成中文,当然你也你也可以把它翻译翻译成中文,对吧?当你配置完成之后,也可以把我们之前的这个 教程当中把这个点 b ak 这个扩展名给去掉,我们就可以把这个资源文件变成中文了啊,那么我个人建议的话呢,实际上没有必要再去把它变成哎,中文啊,我们就用英文的开发界面就可以了啊。 ok, 那么这个时候我们来打开它之后,我们发现啊, 我们现在来新建一个设计师的界面,对吧?这是 qt 第三个啊,大家看到啊,我为什么说 qt 第三个啊?实际上是他这个地方是这样的, qt 第三个啊, qt 设计师有个翻译对不对?有个翻译的啊。好了,那么我们来看到我们这个地方的话,有很多的选项, 大家看一下啊,这个选项是一个模板,大家看到没有?左侧的话呢?是就是一个模板啊,风啊,然后 dialogue with 什么? buttons buttons, bottom 是什么意思啊?就是有几个按钮在这下面啊,就是右侧显示出来的一个效果,我们看第二个啊, 呃, dialogue with buttons right 啊,就是在右侧对不对?在右侧的一个按钮, ok, dialogue result buttons, 也就是一个 dialogue 啊, dialog 什么意思啊?是没有我们这个 怎么这个这个这东西的啊,就是没有这种,没有这个这个,呃,这个放大缩小这个东西的,对不对?放大缩小的这样一个按钮的啊, 那么这就是大老哥。我们这呃眼前的这个东西其实也是一个大老哥,对吧?也可以自首,也可以说是一个大老哥啊。好,那么我们下面的话呢,有个叫做 man man window 啊, 门温度,这个门温度的话呢,我们是上节课给大家有用到啊,这个门温度他有什么样的好处呢?他有自带的一些菜单栏,有自带的一些,比如说是,嗯,排序,对吧?比如说中间的一个结构啊,那么这个地方实际上是对我们的 vigit 这个,呃,这个这个空间啊,它的一个 v 九的这个积累的空间,一个一个一个叫做什么?重写啊?重写,他重写了很多个功能,也就是说我们日常的在开发的时候,我们可能更多的会去使用这个 man window 啊,因为利用 man window 的话呢,我们就会 可以有一些就是说他已经制作好的功能,我们就可以直接去使用了啊,这个就是没有 window 的一个好处,对吧?没有 window 的一个好处,那么最根本的还是这个啊, vigit w i d g e t。 啊, vigit w i d g e t。 啊,这个 vigit 又来什么用?这个 vigit 就是一个最基础的一个模板啊,最基础的一个积累,他的一个窗体空间啊,他的一个窗体空间,或者是我们其他的按钮空间,实际上也是积累是继承于他的啊。那么我们右侧的这个地方, 呃,我们的这个界面大小的话,我们他其实有这个啊, q v g a 啊, q v g a 以及 v g a 的一个这个其实是用在哪里的呢? 这些的,呃,方式的话,实际上是它是用在一些那个呃小的,小的设备的啊,就是小的一些平板啊,小的一些, 嗯,这种这种可可嵌入式的设备啊,因为我们 qt 的话,我们杰克 c 加加,我们会做一些嵌入式的开发,会比较多,那么我们这个地方呢,屏幕大小我们使用默认大小。好了,因为我们做的是桌面单的程序啊,桌面单的程序我们可以完全可以用这个默认大小啊, ok, 那么我们此时来 来创建一下,选完之后我们创建一个,创建一个,我们此时的话,他这个地方显示了一个 phone, 也就是创体,对吧?创体创建名称是,呃,昂昂抬头,昂昂抬头的也是还没有被命名啊,我们此时可以命个名保存一下,点击保存, 双体另存,为什么呢?双体就另存,我们这个 ljy 要死。好了啊,我们这个地方另存,为什么呢?我们就另存为,比如说是 alj, 呃,这个叫做 aljy, test 零零三, ok, 就 test 零零三,零零三,好了啊, 了解 ui, test 零零三, ok, 这时候我们就是怎么样?这是一个 ui 窗口,大家看到没有,这是一个 ui 啊, ui, ui 是什么?一个意思啊,这个 ui 其实就是啊,就我们就是一个设计界面嘛,对吧?此时保存就 ok 了,对吧?点击保存。哦, 好了,那么刚刚讲到了一点啊,就是重要的一点就是 q v j, 这个地方是非常重要的啊,这个地方 q 啊,其实都是大写的啊, q v j t, 对吧? q v j, 这个 q 是大写的,大家注意啊,这个地方,呃,在拍摄当中,我们这我们的这个 大小写是非常有区分的,对吧?包括我们 c c 家家啊,包括我们的这个加了啊, c 十二,这些大小写都是有区分的,所以大家呀,在编写代码的时候一定要注意这个大小写的关系啊,大小写的关系, ok, 那么 我们这个地方我们来继续看下去啊,我们现在是一个空的吧,对不对?现在是不是空的窗体啊,空的窗体的大小,我们可以来看一下这个属性啊, 四百乘三百啊的这样一个大小,默认是四百乘三百,我们看到这个属性啊 的一个属性,就是他的专门处理的话,他里面分成 x y 以及这个啊,以及这个宽高,对吧? xy 是指这个从左上角开始的啊,左上角就是说屏幕的左上角,在这个最底方啊,这个地方,屏幕的左上角,这窗体的左上角,这个左上角,我们就是 xy, xy 从零零开始啊,最左上角是一个啊,大家看到没有,我鼠标锁锁点的这个地方左上角是一个零零啊,零零,当我们屏幕的左侧啊,我们就是屏幕的这个水平方向的,就是 x 啊, x x 就有这么多,对不对啊?屏幕的垂直方向啊,就是 y 啊,屏幕的垂直方向就是 y, 那么他的呃, xy 就是这样子来看的啊, xy 就是这样来看的,然后呢,也就是说我的这个窗体啊,待会启动的时候,他会在我们的这个零零 这个点,然后呢,他窗体的宽高就是啊,宽高就是四,宽是四百,高是三百,这是他默认的一个情况啊,绝美区域啊,那么我们把这一个其实可以记一笔啊,那么 在我们的这个什么 q t 设计 t q t 点三个啊,第一 s i g n e 啊,在我们的 q t 点三个啊 啊,设计师界面,设计师界面,我们的看他的属性啊,这个绝美垂这个属性是非常有必要去认识的啊,绝美垂直属性,我们来看一下,呃绝美垂直属性啊, 啊 g e o m e t y 啊,这么去属性,那么这个属性的 x 代表代表啊,代表啊 啊,窗体出现这个叫做出现的位置啊,位置是在啊这个屏幕啊屏幕的左上角,我们看看啊,是不是这样啊,左上角,我们待会来看一下啊啊 y 的话呢,我们啊代表 窗体哎,左上角水平方向的零的位置左上角水平方向方向的零的 啊,零零的位置啊,我们其实这个在以前的这个 vb 的基础的界面啊,就是可视化桌面的开发的时候我们就已经给大家讲到了什么,就已经讲到了我们这个屏幕左上角这个位置其实就是零零,对吧?啊,或者我们一些相对的 一些窗体的一些情况,屏幕啊或者相对窗体的左上角一半也是零零啊,那么窗体出现啊,呃出现的位置是在屏幕左 啊,上脚垂直方向外的话是垂直方向对吧?垂直方向哎方向的 零的位置啊,零的位置, ok, 那么下面还有一个宽高对吧啊默认宽度四百啊,像素啊,这个地方单位应该是属于像素啊,像素 啊,四百啊,那么高度默认高度啊,默认高度是多少?三百,对吧?三百,那么我们来看一下啊,是否是这样子啊,是否是这样子, ok, 我们保留一个空的创体啊,我们把它关闭掉,关闭掉以后我们回到拍全,我们看到这个地方我们刚刚保存的是 ljyt 四零零三,对吧?我们现在来生成一下啊,通过 py iq ipyuic 来生成,对吧?我们点击这个工具啊或工具,然后呢点击这个 xtoner, 然后再点击这个 pyuic, 对不对?此时我们就可以生成同名文件的 py 文件啊,我们来看一下,右键点击生成哦,已经生成了,对吧?大家看到了,呃,他的一个变化,对不对?相同文件名称的一个 啊,扩展名是不一样的,点 py 对吧? py 文件啊,我们上现在双击打开它啊,双击打开它,那么这个的话呢,是我们其实在之前编意的时候为什么是相同名称啊?因为我们在这个地方设置的时候是相同的,大家还是要复习一笔啊。这个地方我们来看一下,呃, pyus 是不是我们用它来进行变异的,因为它毕竟变异的时候我们采用的是拍神变异器啊,拍神变异器,拍神变异器的时候我们调用,首先 m m 是不是猫斗,对不对?我们可以理解成猫斗,我们来调用的是一个模块啊,拍神,首先是拍神变异器啊,拍神变异器,然后我们调用的是, 哎,这个地方其实也可以说是他的一个是解释器啊,解释器对不对?那么我们然后呢就是调用一个模块啊,一个参数,参数是模块的名称 py qt 五下面的 uic 下面的 pyuic, 对吧? 我们将当前文件的名称,也就是发由内当前文件名名称转换成什么呢?目标,哦不就对不对?转换成目标文件是什么呢?杠杠欧,目标文件文件名称 without external, 因为默认的话呢,是 我们是有这个哎 x 腾讯默认情况下,我们这个文件的话,他是有一个这个 u u i 的一个扩展名,对吧?我们转换过来的文件名称是不要让他有有有这个什么扩展名为 ui 的啊, ui 扩展名就不要,所以我们这个地方叫做 without without 什么呢? extent extension 对吧? without extension 啊, without extension。 那么我们后面的话呢,再加上自己手工连接了一个点 py 啊,这是一个他的一个呃叫做什么扩展名啊?手工连接的对吧?手工连接的好,我们现在回到这里,我们刚刚给大家内串命令啊,做了一个简单的解析啊, 那么我们把这串魅力简单解析的话呢,还是写一下啊,因为我们之前好像是没有给大家去去续写过啊。 补充一下,补充命令解析啊。呃,补充,呃充这个什么 p y p y u i c 命令解析 啊,命令解析, ok, 那么我们来看一下,把这一串拿过来,对吧?呃,那么使用这个 python 啊,点 x e 啊,解释器,解释器,然后呢? 呃对吧?呃,这个地方我们就是来说明一下,说明的是什么呢?杠 m 啊,表示 model 调用 某个模块啊,某个模块啊,叫什么模块呢?就是调用的是 pyqt 五下面的 pyuic 模块对吧? pyu 的 uic 模块啊。 啊,这里啊表示什么呢?吊用,吊用 啊,这个模块,对吧?这个模块,那这个模块的话呢,也是我们自己已经下载过的啊,在我们相应的包文件里面,我们是不是之前有这个呃,通过 pip install 然后 pyqt five, 对不对?这样一条命令就可以把它 下载下来,并且进行安装,然后呢我们这个地方杠欧就表示目标文件啊,杠欧啊欧表示啊,目标啊,生成,生成目标, 生成目标文件啊,目标文件。那么呃,这里,呃使用什么呢?使用这个,这个我们 就是表示当前的文件名称啊,这个啊表示,呃,这个文件名称, 这标是什么?什么文件名称呢?就是需要转换的啊,转换的原文件文件名称名称, ok, 那么我们下一条我们来看一下啊杠欧就是表示要生成啊表示, 呃需要生成目标文件,对吧?需要我生成目标文件。那么这里使用这个什么呢?呃相同的文件名称,但不含扩展名啊, 这里使用这个这个表示,哎表示于原文件 相同的啊,余额文件相同的, 哎什么呢?文件名称,但不包含扩展名, 扩展名的目标文件,对吧?那么扩展名什么呢?扩展名,我们扩展名啊,我们通过,哎自己连接连接点 py 啊,那么最终表示, 那么啊最终什么呢?表示什么呢?表示生成的是,嗯,拍森的拍森类型的文件啊文件。那么我们这个 地方呢,给大家还是细细的解说一下啊,是非常有必要的啊,好了,那么大家呢还是要去理解啊,那么我们现在呢就是相同文件文等名称的一个目标的 py 文件,对吧?我们自己来连接的, ok, 我们发现生成的这样一个文件之后,上面的都是一些什么?拍摄当中我们使用这个 啊井号来表示啊,使用这个井号来表示注视,对吧?使用井号来表示注视,那第一行是有作用的啊,第二呢,我们是采用 utf 八编码的形式来进行生成的,对不对? ok, 那么我们来看到啊,这个地方有一个说明啊,就是啊,凤 凤也是,也就说是一个窗体接口,通用的,来自于什么什么,哎,这一个对吧,来自于这个文件的是不是他已经说明了幺九 its 零零三点 ui 的一个,哎,来来 生成的啊,同样的这样一个文件来生成的啊,那么酷瑞的 bi 什么呢? pyqt 五 ui 啊啊,来来,他来创造的啊,他五点一一,三点一,我采用的是这个版本, ok, 那么我们来看一下警告啊,说明一条,我们他这个说明啊,所有的改变。 made in this fire will be lost will be lost will be lost。 这个文件当中啊,我要比老师什么可能,可能会有所啊,生成的这个文件可能会 有所丢失啊,对吧?可能会有所丢失,我也不知道丢失什么东西啊,那的这个东西总归是为了安全起见吧,人家都会去写一句的,对吧,不保证可能生成的东西完全一样啊什么的这种,但是基本上生成都是可以的啊,那么我们主要的呢,还是要看这个地方,这个地方我们上次啊 上一节课程当中已经给大家解释过了,应该来说是解释还是非常详细的啊,那么这个地方首先是调用 from fram 什么酷的名称,对吧? pyqt 五啊, prqt 五,然后呢,导入的是 py, 呃,这个 qt 的一个啊,其实就是导入 qt 的一个核心啊, qt 核心, 这是一个 dll 文件啊, ddll 文件啊,这也是一个,这是这也是一个三个 dl 文件动态链接库的一个啊,类名 啊,那么我们导入的是这三个啊,这三个好,我们可以其实从其实你如果说想要仔细的去看的话呢,你可以去找到你自己的这个呃, pyqt 五的这个文件啊,去对照就行了啊, 那么我们这个地方我们就不继续往下去仔细去看了啊,那么我们来主要是对照我们这个地方后面的这里我们看到啊缝,对不对?首先 他是一个凤啊,凤这个凤其实表示的是一个窗体嘛,对不对?就表示一个窗体啊,但是他这个类的名称首先就生成一个类嘛,对吧?我们上节课是不是给大家讲过生成一个类啊?生成一个类,我们来对照一下啊,这一条代码 类当中是有两个方法啊,对吧?这是一个方法,这是两个第二个方法,对吧?那么来看一下第二第一个方法啊,第一个方法的话其实没多少代码,其实就是赛特啊,不就是赛特吧?赛特 fui 什么意思啊?我们来通过音中音来翻译一下,大家看一下,翻译一下就是, 呃,安装 ui 对不对?是不是?安装 ui 就这么简单吗?那么 ctrl 不就是安装啊,然后 ui 就是界面,对不对?安装 ui 界面那么传入的是一个形式参数,这个形式参数是行餐,是我们是一个缝的一个行餐,嗯,至于 行餐时餐,我们在以前的这个基础课程当中已经跟大家讲过了啊,就要行驶参数这个地方进来都是一个行驶参数啊,行这个行驶参数的话呢,我们这个地方其实是一个,嗯, 这个地方其实是一个,是一个实力化的一个对象啊,这个实力化的一个对象实际上就是一个窗体,对吧?实际上是一个窗体啊,是一个位置这样一个窗体传进来啊,位置这样一个床体传进来,传进来之后我们就可以位置的是什么呢?位置就是这样一个东西啊,就是我们之前的这样一个, 之前的一个创题,对吧?之前就是一个 ui 的之前的一个 q v j t 嘛,对吧? q v j 啊, q v j 的这样一个窗题,我们可以对他进行传录啊,对他进行传录,那么我们这里的话呢?呃,传录的时候我们待会要调用啊,传录成之后才可以调用嘛,对吧?然后我们来把这个地方 set 什么呢? object 啊?内 啊,这个其实就是我们之前的这个名称凤,对吧?哦,不就,那是什么意思啊?对象的名称是凤,这,这个我们有所对应的,我们来看一下啊,对应过来我们的这个地方,我们重新来打开这个工具, external tour 啊, p y 啊,这个这面 q t 第三个,然后我们来,我们通过这个,此时我们不要创建啊,我们通过打开,点击打开, 然后打开这个幺九二 t 四零零三啊, ok, 我们打开之后,我们发现啊,这个地方 object the name 是什么啊?这个目标的名称,也就是这个 form 的名称,这个 form 的名称,对吧?这个 form 的名称是什么呢?就是这个他的这个窗 form, 其实就是窗体的意思啊。 object name 其实就是指这个窗体的名称,就是叫做凤啊, fo 啊, m 啊,我们给他取了个名字叫做凤啊,对吧?那么这个呢?我们其实 啊,这个我们叫做什么呢?我们来写一笔吧啊? oppoject 的内容啊,窗体对象的名称,表示窗体对象的名称, 好,我们来写这个地方,这个地方,呃,这是这个属性,对吧?这属这个属性啊,我们再换一个属性啊, object name, object name, object name, 好,这个对吧? 这有二不留的内容属性,这个属性呢,就是表示什么呢?表示窗体对象的名称, 窗体对象的名称啊,窗体对象的名称,那么其实就很简单,我们就写到这行就行了啊,表示窗体对象的名称,因为为什么呢?这个窗体对象其实就是指这个, 嗯, q 位置的一个实力化对象啊,注意,窗体对象其实就是指啊, q 位置词 w, w, i, d, g, e, t 啊的实力化对象的 实力化对象啊,实力化对象,某一个实力化对象,那么这个实力化对象我们可以给他取一个名称,这个名称其实就是这个 form 的名称,对吧?这个 form 的名称, ok, 我们继续看下去啊,来,继续来对应过来,我们来看到他生成的这个 resides reset, 通过这个 resets 是什么意思呢?其实就是 这个,其实就是一个,嗯,而这个 set object, 我们 set object, 其实我们来看到啊,这个是 qt five 当中的一个设置对象的名称, 对啊,设置,对啊,没错,我们这这个地方还进行了一点点的补充啊,一点点的补充。 set object, 那么他是对应到对象的设计师界面,对吧?他是对应到拍神 代码中设置窗体的啊,设置窗体方法啊,设置窗体名称的方法啊,方法 ok, 哪个呢?就是指这个,对吧? 双,这是双体名称的方法,这个 set of 就是内啊啊, ok, 那么我们来再看到啊,这个地方上面,呃,这个 recise, recise 其实是指,就是指什么呢? recise 啊,那默认情况下他这个地方,呃,因为是左上角嘛, 所以他就默认情况就是零零了啊,可能就是零零了,那么我们瑞塞斯其实是对应就是从啊重新调整大小,对吧?调整窗底的大小啊,我们这个地方我们来把这个函数单独来列一下啊,瑞塞斯,那这瑞塞斯函数是什么意思呢?其实就是指啊作用 重新啊调整窗体大小啊,窗体的大小,大小 大小,那么这个大小其实很简单,我们上节课给大家有解释过,但是没有具体的写下来啊,我们这次给他彻底的写下来啊,那么他的一个有两个参数啊, 有两个参数,对吧?啊?第一个参数,我们通过这个四百对应过来,对应过来,我们看到这个地方其实就是什么?就是他的一个宽度,对不对?三百就 高度,对吧?哎,所以他的第一个参数其实就是第一个参数表示宽度值,宽度值啊,第二个参数表示高度值,对不对?高度值,那么举例其实就是指这样的一条 啊,对吧?举例我们来看一下啊,就是放点 recess, ok, 放点 recess, 这个是应该是一个小写啊,对啊,大家要注意,他是有大小写之分的啊,放点 recess 啊, ok, 那么我们来看一下啊,我们也可以通过这个, 呃,通过点击 ctrl 键,然后再点击鼠标左键可以点进去,哎,大家可以看到啊,这里面设置他宽高,对不对?他有这个啊,他有这个这个地方啊,这个地方是属于在哪里呢?我们可以看一下啊,在, 在我们的,在我们的这个很里面的一个方法啊,很里面的一个方法。呃,这我们应该是要到这个 qt p y q t 五这个这个地方。 p y q t 五的这一个方法里面啊,这里方法太多了,一下子也很难去找到,去定位到啊,那所以还是大家一定要记一下,对不对? p y q t 五的这个核心里面啊,对吧? p y q t 五的这个核心里面去设置它的一个宽高, 要找到的是要要对应到啊,这应该是这边啊,应该是这一边,大家看一下啊,这是上面的绘图的一个东西,对不对? graphic 啊,我们这个地方应该是 q veget 啊,设置它的一个宽高啊,我们来看一下 wedges, 应该是这一个方法啊,这就对了啊,对吧?大家来看一看到啊,这个 wedges 的它的一个所在的,它的所在 的一个。呃呃,一个一个他的一个拍摄代码所在的 页面啊,他是在哪里啊?他这个文件到底在哪里啊?大家看到在这个用户文件下面的,对不对?在这个用户文件下面啊,大家可以又通过这个地方右键,然后来找到秀音 x pro 啊,这个里面应该有很多啊,大家看到吗?啊?他都是一个 q t 的 p a q t q t five, 大家看到吗?这 q t q t five 我们安装在这里面啊, p y q t 五是不是安装在这里啊?当前的用户文件下下面啊?哎,我们我们所有的 所有的通过这个 py 管道啊,下载下来这个文件就安装在这个地方,对不对?然后我们通过这个地方,我们就找到了有一些其他的一些空间啊,对吧? qtfi 以及 qtv, 这次有哪些呢?有很多,这里面还有 button 啊,一些绘图的 slide go 啊啊,一些一些拉条啊啊,一些按按钮啊,一些带 lug 啊,一些这个 come on botton 啊, line 啊啊, file 啊等等,对吧?我们我们这个地方有很多 ktv 这词,也是这里啊, 包括我们这个里面有一个 risss, 对不对?通过这个 q 位置, q 位置最基础的一个代码啊, 最基础的一个负累啊,这个负累里面就是有这个地方,对吧?就是有这个瑞塞子,他的一个宽高啊,宽高。好了, 那么我们来看一下啊,这个地方我们是不是已经看到了?已经看到了,我们点进去刚刚已经看到了啊,应该大家不要找错啊,找的话应该找这个 pyqt 五的一个位置,对不对? pyqt 五的一个位置啊,毕竟我看看,我们看看这里面他有两个参数,这个也可以通过 q size 的这个 仓鼠来进行设置,对吧?啊?我们后面啊,再逐渐来使用这个东西啊, 好的,那么我们再接下去看下一条啊,再给接下去看下一条,这个下一条呢?我们实际上就是一个 sf 点调用了他,对不对? sf 点啊?啊?这个 retranse retranslate 什么意思啊? re translate, 我们可以把它来查词查一下啊, re translate 啊, 重新设置什么东西,对不对?圈子来的,是不是一个翻译啊?啊?是不是一个翻译的意思啊,对吧?我们来看一下啊。 呃,百度来看一下。瑞圈斯莱特是什么意思呢?啊?圈斯莱特就是翻译嘛,对不对?把什么或者把什么转变为什么啊?瑞圈斯莱特啊,就是重新翻译一下或者重新转变一下这个 ui, 然后呢对他来进行这个传入的这个对象啊,传入的对象哎。呃然后来来调用这一块啊,重新重置一下,对不对?重置一下。重置他成什么呢?重置他成这个 qt cool 啊,调用一个 qt cool。 qt cool 的话呢?我们也是在这也是有的啊,对不对? 我们是不是在我们刚刚的调用的这个文件啊?我们我们其实已经找到过了,我们不再去找了,刚刚已经找到这个 qq 号的一个文件夹了,对不对?啊?我们看到这个 qq 号下面有一个 q 号 啊, q call, application 还 translate。 那这个地方,呃这是一个,我们直接可以点点过来了啊这个这个地方应该是唯一只有一个我们我们这样子的唯一只有一个的话我们可以直接找到他了,对吧?可以直接找到他了。 qt call 对吧? qt call 这是一个文件夹,单 度的一个文件夹,里面有很多很多的一个核心的量的一些东西,对不对?哎可以有一些什么,一些系统的一些时间啊,一些系统的一些酷啊,一些操作系统的文件啊, 等等啊,非常重要的一些东西啊。长安没有对吧?嗯,大家可以通过呃这一个拍神代码的一个,呃他的一个,嗯嗯,就是就是这么一个 api 吧,对吧?差不多是一个 api 就可以看到了他的一个作用啊就可以。 ok 那么这个呢其实他最基础的我们可以看一下啊,这个类他是基础继承于哪里呢?他其实继承这些东西啊,都是继承于这个 oppo 句子啊,都是继承于这个 oppo 句子啊,对吧? ober 这个 oppo 句子才是最最根 根本的一个东西啊。啊,这是 q t 里面的东西啊,对吧?那么我们不多讲了啊,这是我们直接调用这个 q t five q t five 这个库就可以了,对吧? 好,我们这个地方呢, qt call 啊, qt application 对不对?呃是一个,最后再返回是一个转换过来的一个对象啊,将我们转换过来这个对象呢?我们可以设置 窗体的标题啊,这是窗体的标题啊。什么什么默认情况他是一个缝对不对啊?默认情况他是一个缝啊。 哦 ok, 这个地方有个 set set window title 啊,上一节课我们是不是用了 stat window title 啊,来设置我们窗帘的标题啊?实际上我们这个地方呢就默认情况已经给他设置过了啊,通过这个我们我们设计界面的时候就已经设置过了他的一个界面啊,对吧?我们可以把它变成。呃 我们待会进行转换啊,转换过程之后我们还可以进行设置,我们来进行观看好了啊。 ok, 我们下面的话呢,还有最后一条啊, qt mate mate qt 扣,然后呢? q mate 什么呢? object, 然后有一个 connect 啊? connect mate object 有个 connect。 什么有个槽, 死老子槽连接我们槽的名称,这个槽的槽是什么槽呢?就是指我们这个通过我们这个 qt 的一个核心代码去 呃, qt 当中最为关键的就是一个信号语槽啊,大家先进行一个了解吧,但是我相信,呃没有用过这个 qt 写代码的同学可能是可能会听不太懂啊,但是没有关系啊, 但是你记住有个信号槽的一个关系就行了,实际上就是一个 qt 的一个就相当于是 捕获 qt 当中的某个事件啊,事件其实信信号,我们其实就是一个事件,点击单机事件其实就是某个信号啊,可以这么去理解,嗯,好,那么我们简单的在后面加一条啊, qt 当中的理解啊, 啊 q t 啊中信号的理解,那么哎,比如说什么呢?比如说,呃这个单机事件对吧?单机事件啊,那个,呃或者说是这个某个 某个什么信号呢?比如说是超时超时信号啊,等啊,都是等啊,都是这个 q t 中 的啊, cqt 中的型号啊,可以,实际上啊,说到底其实就是某个说到底啊,说到底其实发生发生了某个事件说到底啊,说到 啊其实就就是界面上上面发生了某个事件啊,发生了某个事件 某个事件或者是某个信号啊事件可能是理解起来会比较的单一啊,其实其实或者发生了某个 信号会比较的准确啊,信号会比较准确。 ok, 那么我们我们来直接来生成自己再来生成一下啊,我们这一条啊, ok, 我们来执行 ljy 零零三 三自己来写一条幺 j y 零零零零 l j y 零零三吧啊零零三, ok, 我们来 现在我们来调用一下这个代码,对吧?调用来调用一下这个代码,再来调你一遍啊,以前已经调用过了,对吧?我们自己来写一下看看啊。 input 什么呢?首先 input 这个 sis 啊,是之前是不是已经给大家讲过啦?另外一个 input 什么呢? input 我们可以调用一下这个, 我们我们这一次可以传入这个微决策啊,不一定要传入这个闷微决策,对不对啊?我们这次此时传入这个微决策,哎,这个微决策的话,我们在什么 p y q t 五这里面的微决策里面就可以了,对不对啊?我们来 啊,这个是酷酷的名称 from 酷的名称,然后呢是一个音炮的导入,我们 只要导入这个啊, q apply k 群啊, q apply k 群以及这个 q 位置就可以了啊, q 位置,那么我们此时这两个,这两个库我们导入进来就可以了啊, 对吧?此事要倒入库啊,我们写的时候呢,嗯,程序的思想啊,待会还是要给大家再明确一下啊。 那么首先我们倒入库之后啊,我们来有一个 f 一句,对不对?这个 f 一句我们其实是可以不写的,我们之前是不是有给大家写过这个 f 一句啊?那这个 f 一句我们呃 name 在判断的时候呢,就是指本身的这一个, 就本身这一个文件在写入的时候模拟了一个路口,其实这个路口我们知道啊,拍伞,我们在写的时候,这个程序啊,我们就像批处理一样,一条条代码 执行下来的,对不对?实际上我们可以只要把这个程序作为一个,这个文件作为一个主路口的话,我们其实就也不需要写这个一辅一句,对吧?也可以不需要写这个一辅一句啊,当然写了这个一辅一句的好处呢,其实就是我们可以在其他代码在电路的时候呢我们可以呃 判断对吧可以不写就是可以不会创业腐具当中没人当中的这个代码可以不会不会被调用,哎这么一个好处啊,当然我们其实可以不写了对不对哦那么我们这里面先开始呃就直接布写好了,我们其实这个地方其实可以去布写的啊, 我们来看一下直接开始来写这个 q apply k 讯来首先来调一下啊 q apply k 讯 app 对不对啊?这还是要掉的对吧? q apply k 讯啊那么我们传录是什么呢?传录的是一个呃拍摄当中的一个参数 argb 对吧这是这还是非常重要的啊这个地方是什么呢? 首先这里面是我们这个导入的是系统类拍摄的系统类 啊,我们一条再解释一下吧啊导入啊拍摄系统类啊系统内裤 ok 第二条我们就是导入导入 pyqt 五类啊用到的内裤啊内裤一个是啊 oppolik 型 啊啊 placation 应用程序类对不对?程序类啊核心类啊,那么还有一个呢就是空间的之类 q 五 v 九 啊空间的之类啊之类对吧啊大家应该这里这几条应该都要知道的啊。好我们来再继续看啊。呃 plak 选我们现在就是把这个应用程序类进行实力化。 好我们一条条来稍微解释一下,因为呃有的小伙伴可能半路插进来啊,就是说是听这样一个程序啊,如果说你有之前的这一个,嗯 呃从我们的零基础拍摄教程啊老刘的零基础拍摄教程从第一期到一百二十五期的一个经验的话呢啊,学习之后你就可以怎么样呢?就拥有了这样一个啊,就是累的一个概念啊, 你就可以知道啊,我们这个地方你要进行实力化一个类,对不对?这个地方其实就是一个类库导入的是一个类啊,一个库呢,实际上就是一个类 class, 那么这个地方呢?实际上就是一个,呃, 这个基地其实就是一个实力化一个类,对吧?实力化一个类啊啊?通过构造函数,构造函数传入啊,传入这个 python 的参数, python 的应用参数 啊,有有拍成的用餐数啊,系统用餐数,对吧? a l g v, 我们可以点开来看一下啊, 这个地方是一个空的。 real 什么呢?它是一个 real value, 真的一个值,对吧? list 啊,有一些什么牌子,那些其他的一些东西啊, 这样一些东西会被装载进来的一些东西,我们就可以通过这个参数来进行传入啊,盘成的一些这个参数进行传入,那么有什么就传入什么吗?对吧?我们刚我们到时候可以看看到底是有什么东西,我们可以 打印进来,打印出来,对吧?可以也可以打印出来吗?他是一个全局变量啊,大家注意啊,当然是吧,他这个地方是一个全局变量啊,所以也就是说在后面也有可能进行传入的啊,这样一个参数的一个值,我们可以进行打印 啊, print 进行打印,对吧?拍摄一旦进行载入之后呢,我们就可以进行打印,此时我们其实就可以先看一下了啊,通过右键与 run 啊,可以看看什么都没有,对吧?有一个什么呢?他就有一个这样一个文件的名称被打印出来了,对吧? 他是一个什么?他这是一个列表啊,这是一个列表传入的第一个文件的名称,也就说是 a 九二零零三啊,就是把自己文件的名称传进来,这个文件的名称传进来,传进了什么呢?传进来之后就到这个 q opla k 群当中,我们就去构造了一个把这个文件,对吧? 把这个自己的这个文件名称自己给给传进来了啊?一个一个列表传进来之后,他可能就会去检测到,对吧?检测到 q aplux 就会去检测到,检测到这个列表,对吧?这个列表这个列表他可能会在初始化的时候进行应用啊,进行应用初始化的时候我们就要载入进来,对不对? 好了,那么这是我们打印的一个拍摄的一个参数,到底是什么,对吧?这个时候我们参数是 一个就就一个文件的名称啊,有一个文件的名称,我们拍摄直行过来的时候就会有的啊,就会有的。那么这个地方呢,我们其实就是实力化一个类啊,实力化一个类,然后呢传入我们的拍摄的应用参数,其实就是这个参拍摄的应用参数其实就是一个拍摄的文件名称,对吧? 啊?这里啊打印打印出啊,这个当前文件名称的啊,列表啊,包含当前文件名称的, 包含当前文件名称所在路径名称。呃,应该是具体路径当前文件 具体路径的名称,对吧?具体绝对路径?应该是啊,绝对路径,所谓绝对路径啊,就是包含从根目路开始啊,然后到文件的名称这里啊,我们绝对路径的名称啊,绝对路径, 我们把这个稍微写一笔啊,稍微写一笔,这个绝对路径,绝对路径, 那么路径说明啊,这有两个,一个叫做绝对路径的概念,一个叫做相对路径的概念啊,大家要明白的,绝对路径,我们一般来说从从根目录开始到文件的名称啊,从根目录,根目录开始的路径啊,路径 详细路径,对吧?详细路径啊,那么还有个是叫做相对路径啊,相对路径呢,其实就是相相对于某个文件 目录啊,目录的路径啊,相对于某个文件目录的路径啊,不会出现详细的这个路径的名称,对吧? ok, 相对路径,我们往往啊,通过一些啊, 相对路径,路径往往有一些代表性的东西啊,往往有一些符号代表,符号代表啊,代表。 ok, 那么什么呢?我们是点这个点啊,点 点表示当前路径啊,当前路径点点表示什么呢?这个叫是点点啊,表示上一层,上一层 路径啊,上一层路径那点点杠,点点杠啊,那就是上一层的上一层路径,对吧?哎,好,我们往往啊,就用这两个,哎,表示的比较的多啊,表示的比较多。好了,那么我们接下去呢,有了这个应用程序之后 后啊,我们最后就是为了程序退,程序退出而使用的,对吧?程序退出而使用程序退出的话,我们是有一个监控的啊,通过 six 的一个,呃呃,退出 excite 啊,退出之前我们监控的什么呢?监控的是 app 的 excite, 这个时候呢,这个地方其实就是监控程序的界面,监控程序退出的时候,对吧?监控,我们这个进程退出, 退出之后呢,我们会有一个执行一个退出的代码啊,实际上这个地方退出的是一个,执行的是一个,返回的是一个零,对不对?返回的是一个零,也就是说监控啊,啊?监控这个, 呃,这个地方呢,其实就是一个死循环啊,此时这里其实是一个死循环啊,死循环返回的一个界面啊。嗯,这个表示 这个界面程序界面监听事件, 今天啊,这个上次,上次好像给大家记过了啊,记过了啊,那我们再记一笔啊,今天事件的开启啊,是一个死循环 啊,是因为是一个记起来了吗?死循环,这是一个死循环啊,一直不断的去监听我们事件的界面,对吧?我们来看一下啊,我们现在这个程序有吗?现在是什么都没有吧?应该,对吧?我们右肩来看一下啊, 哎,还是什么都没有?他就是一个进程在这里,对吧?他就是表示一个进程在这里啊,现在我们把这个观看掉啊,所以我们这个地方其实是什么都没有啊,就一个进程,对吧?也没啥用啊。那我们界面是不是要搞一个啊?界面我们来搞一个看一下。界面搞一个我们界面的话来自于我们 之前的那个这个东西,对吧?是不是来自于这里啊?四百、三百啊什么的,对吧?那么我们这里呢?呃,我们来把这个东西进行实力化啊,把它进行实力化,导入这个,导入这个什么 uiphone, 对不对啊?首先把这个界面的 把,这个应该是 test ljytest 零零三要倒进来这个模块啊,这个模块首先要倒进来啊,来,再来导入一个啊,再来导入一个 input 啊, ljy, ts 零零三,对吧? ts 零零三, ok, 这个地方我们就是导入模块啊,导入叫做导导入模块,对吧?导入这个这什么的模块呢?导入类 的,呃,生成界面的类的模块啊,生成界面的类的模块,对吧? ok, 那么我们导入这个类的模块之后有什么用啊?什么用呢?我们就是要现在开始是就可以调用了吗?对不对?调用这个模块啊,调用这个模块的什么呢?他的一个 uifo, 对不对?他的 ui, 哎,大小写是有区分的啊。 uifo, 我们这个类啊,我们将类进行实力化, 将类进行实力化缝,对不对?他是不是一个缝吗?我们就用缝好了啊,就一个缝。呃,实力化,我们这个类 实力化生成生,生成的界面的类啊,这是一个实力化生成的界面的类,那么我们将实力化生成的界面这个类的话呢?我们可以进行一定的配置, 或者是啊通过这个什么呢?通过这个,呃, set, set up ui, 对不对?通过这个地方我们传入这个一个,把这个类呢传入到某个界面上,那通过他传入到哪一个界面上呢?我们就要 搞一个界面出来,那搞一个界面是哪一个界面啊?就是一个通过 q 啊, q 位置词啊,就可以作为一个 啊,窗体的一个界面,对吧?窗体的一个界面,我们就直接来一个 qv 的啊,那大家其实记住这一个步骤啊,这其实就是一个程序生存的一个思想啊。 好,那么我们来这个前面是不是要补一个啊?他是不是没有啊?没有我们就要搞一个 q v j 词, ok, 那么我们就用 w 来表 w 来表示 v j 词好了啊,呃, ok, 然后呢是一个 q v j 词,对不对? q v j 词啊?好,我们就直接实力画一个界面 写一下实力化啊,实力化,实力化,界界面之类啊界面之类, 这也可以表示一个实力化的一个界面积累啊,啊,对吧?界面的一个积累位置成一个空间的积累,我们把它传入进来就传入到我们他就行了啊,好,传入到他之后呢?我们就是,呃,是不是通过他进行赛特阿普拉? 现在阿布之后啊,就是实际上就已经把我们的这个界面啊,就已经啊 ok 了啊,就已经 ok 了。然后呢就是不是装载到这里面去了? 我们看看啊, ctf 装载到哪里呢?是不是装载到这个啊? fom 啊?装载到这个 fom 这里去了啊?装载到我们实力化的这个 fom 里面去了啊? fom 点什么?什么?是不是?哎?装载进去之后我们是不是就可以将这个啊?他就显显示出来了?显示出来了, 我们来看一下啊,有没有东西啊?是不是如此啊?哎,是不是四百三百啊?但是呢他这个地方呃出来的时候呢,他默认情况下是给你生成的是 中间,是不是?这中间的是不是在中间的?哎?这个中间的这个位置啊,实际上是呃,就生成之后因为我们默认情况下没有配置的,所以默认情况下之前看到的是左上角的零零,对不对?左上角的零零,那所以 但是他在零零的时候呢?他在生成的时候他并没有零零,对不对?并没有零零,那么我们也可以,比如说在这个地方我们给他生成写一个零零啊 form 啊,比如说我们自己写一个零零,自己可以补嘛,对吧?凤点木啊,通过木 呃木啊填放点木的方式啊,比如说是木到零零的这个 位置啊。好,我们来自己再看一下右键绕,你看是不是跑到窗题左上角的零零啦,哎窗题左上角的零零啦,哎。这个地方呢,其实我们使用了一个木方法来 对他的位置啊进行调整啊,我们对他来这个地方木方法啊木方法来做一个补充啊木方法来补充木方法的话呢,我们其实 作用是什么呢?调整啊,调整这个窗体的位置啊调整窗体的位置啊。那么第一个参数表示这个水平方向 水平方向的位置啊,那么第二个参数表示垂直方向的垂直方向的位置啊。这动 是一个用餐用。用什么用像素来表示的啊?母母方法啊,我们刚刚举例,我们可以把这个例子拿过来,对吧?我们修改了我们生成过来的这个类啊,到零零的这个位置啊,因为我们默认我们零零那个位置啊,其实在生成的时候他就没有给你拿进去的啊,对不对? 哎,因为他认为是零零,他可能认为你就是跑到中心位置的啊,啊对吧?举例,使用举例, 使用举例, ok, 我们就是放点,放点什么木?好,那么我们通过这样一个解析啊,我们上一节课啊,默认情况下我们最早的时候我们是不是用的是这个没有温度啊, 而没有 window 的话,我们知道的啊,它继承的是这个啊, q v 九七,对不对?我们看到翻到最上面啊,翻到最上面之后,我们发现它是继 现在是 q 微酒厂,所以啊,我们就是此时我们自己在写的时候,我们其实也可以时间是简单一点,直接写这个,直接写这个叫做什么微酒的就行了,对吧?是不是啊,直接写这个微酒的这个类 啊,直接写这个 vigo 的这个这个鸡肋就可以了啊,对吧?这是一种最为简单的一种写法,那么大家呢,也可以去尝试一下,也可以不使不采用这个,呃, 不采用这个,这个夜府渔具的方式在这里可以用,当然最好的还是采用这个夜府啊,夜府渔具这个通过内来模拟我们这个函数的一个文件的入口,入口啊,这样会显得我们的这个代码会比较 有水平吧,哈哈,会比较的,呃,正规一点,对吧?那如果正规一点,那么我们可以把这上面还有加个 fme 啊, fme, 那么这样子也可以使得我们这个类啊,可以在多方面进行使用啊,也比如说可以导入到其他的类当中,把这样一个窗体呢单独去进行调用啊,单独去进行调用,那这个地方我简单的可以给大家来写一下啊,这地方是使用窗体,窗体显示 啊,显示函显示,所以我们这个秀呢,是其实是调用窗体显示函数,对吧?嗯,秀秀函数, p y q t 五的秀函数是窗体的显示功能啊,窗体的显示功能使得窗体显示出来啊,那么这个呢,实际上是它自动生成的,对吧?这其实就是一 个什么将啊将生成的生成,呃的这个,呃窗体控件及配置什么载入到,载入到这个 w, 也就说是威瑞特这个空间对象, 空间对象中,那么我们将这个空间对象载入进去之后呢,就相当于是这个配置进去,对吧?然后我们就可以显示出来了啊,最后我们就是监控我们这个窗体,窗体这个 app 的对象就可以了啊, 也就是监控我们的这个,呃,我们这个这个叫做什么?呃进程,对吧?监控我们的进程,然后监控监控进程的事件一旦发生什么啊,那我们就进行钓鱼就行了啊。好了,那么我们今天的话呢,主要是给大家呢做了一个非常详细的 一个对照啊,是什么的对照呢? pyqt 五的这个代码,以及对我们的这个啊, qt 点三个啊的一个设计,对吧?对照我们这个设计啊,做了一个详细的讲解,这个文件的一个详细的讲解,那么嗯,大家呢也 自己要好好的去体会一下啊,你自己比如说再加一个东西或者减一个东西,对吧?哎,自己可以去感感受一下这一个过程。好,那么我们最后来进行一次总进行一个总结啊,我们学到什么呢?呃,首先要掌握这个,呃, 拍死啊,对吧? qt 点三个 dsigne 啊,点 qt 点三个。 第三个设计界面与什么呢?与这个我们的 pyu ic 啊,转换后文件代码的对应关系啊,对应关系,这个是非常重要的啊。第二个我们就是要掌握 pyqt 五的啊, 五中基本啊界面的界面,界面中常用函数的基本用法啊用法。那么第三个我们就是要掌握这个什么呢?掌握这个,呃,应该来说是有一点非常重要啊,如何 如何?呃,调用调用生成界面的啊,思想,思想对吧?如何调用生成界面的?这个思想实际上就是应该是,呃, 则啊,实则是什么呢?是 pyqt 五,哎。实则是如何使用 pyqt 五 纯代码啊,纯代码写这个,呃, gui 界面的关键 对吧?就这几点啊。好了,那么本期的教程呢?就是这些啊,如果说你感觉我的教材对你有所帮助的话呢,欢迎继续订阅关注,为我点赞啊。 呃,我们在这个百度的贴吧当中有一个呃呃,贴吧的名称叫做边城创造城市啊,大家如果说呃有什么问题的话呢,欢迎在这个贴吧当中进行留言。好了,我们的啊教程就这些, 哎。刘军编程编程创造城市,欢迎小宝们继续关注我们,下期再见!拜拜!

安装好的 patent 提供了四个选项, 第一选项是 python 自带的 ide, 推荐新手使用它来编写 python 程序。第二选项是在 windows 命令提示服下进入 python shell 模式。第三选项是 python 自带的官方文档。第四选项是 python 的模块文档,它自动启动一个服务, 以 web 形式显示 python 模块的文档。之前的视频我们配置了 python 环境变量, 现在我们再来配置一下屁股的环境变量。先查看屁股能不能使用。在 dust 窗口中输入拍子,进入拍子交互模式,输入屁股,结果报错了。注意,屁股 不是 python 的包。管理器是一个工具,允许你安装和管理不属于标准库的其他库和依赖。 p 不需要在 c m d 跟目录运行,进入 python 交互模式后是无法运行的。那现在已经进入了 python 的交互模式,需要按 ctrl 加 z 按回车才能退出 python 交互模式。在 c m d 跟目录下再输入 p, 提示不是内部或外部。命令证明 peep 没有配置环境变量,那我们现在配置一下 peep 环境变量,找到 peep 的安装目录并复制路径, 打开环境变量配置界面, 双击 pass, 点击新建,输入 pep 的路径, 点击确定。完成 peep 的环境变量设置。关闭之前的运行窗口,重新打开新的运行窗口,在 cmd 的根目录下输入 peep, 出现上面屁股的信息,说明配置成功。