粉丝41获赞1659

啊,以我的一些经验去教一下你们跟着我的一个经验啊,先做出东西,我们再去学这一个内容,那么我们先来看一下这一个 t kink, 我们怎么去用它啊?我们先来看一下这一个最简单的一个案例吧,我们来看一下,在这里面的话,我们可以先去新建一个文件,我们新建一个初体验, 第一这一个的话是我们的一个初体验, 初体验这个的话是我们的一个最小窗口按钮, 追求创卡点。啊,在这里面的话,我们我们要去学 tiki inter, 所以我们第一件事去导入这一个 tiki inter input, 我们的一个 tiki inter, 呃,导入我们这一个 t k inter 之后,我们我们可以把它重命名一下,我们把它艾子一下,注意艾子为一个 t k, 呃,艾字为 t k 的话,就是我们导入的这一个 t k in 的这一个模块,然后把 t k inter 重命名为这一个 tk 啊,那么导入这一个模块之后,我们要去创建一个窗口,对吧?创建这一个窗口的话,我们来新建一下啊,在这里面的话,我们直接给他创建一个 rot 对象,这个 rot 对象的话,我们直接等于一个 tk 点上一个大写的一个 tk 啊,大写的一个 t k 的话,在这里面我们是创建一个 t k 啊,创建一个窗口特效 窗口对象啊,这个窗口对象的话,我们直接导入就行了,它是一个类似的库,我们直接去用。第二个的话是我们这一个 route 对象啊,像创建的这一个窗口对象,我们直接去运行,没有任何的一个效果,这一个是窗口对象,如果我们想要它运行的话,在这个地方需要去加一个内容 啊,是我们的一个闷 loop, 这个地方闷 loop 的话,是啊,这个的话是进入我们的一个视镜循环,进入窗口的一个视镜循环 循环啊,那么我们再把它给运行看看一下,在这里面的话,我们就打开了一个窗口,对吧?这样的话我们啊最小的一个窗口就设设计出来了,那么这个的话是我们最小的一个 t k n 的窗口 啊,但是在一个窗口里面的话是没有任何内容的,对不对?他这个地方是默认的这一个内容,然后其他的一些东西都没有了 啊?那么有了这个窗口之后,我肯定想要在里面去做一些东西,对吧?比如说我想去调整一下这个窗口的一个大小,调整窗口的一些样式,调整窗口的一些内容,那么这些内容我们该怎么去进行操作 啊?在我们这个课件里面的话就全部整理好了。像这一个窗口的话,他会有很多的一些方法啊。比如说他的一个点上一个 title, 设置我们窗口的一个大小,然后点上一个进不去,去设置我们窗口的一个啊? title 是设置标题,进不去的话设置我们窗口的一个大小,然后我们可以 啊去使用他的一些组件,就是在这个仓库里面的话,我们想要去布局一些内容,对吧?我们就可以去设置一些内容啊。那我们先来设置一下第一件事情,我们来修改一下标题 了解啊,修改标题的话,我们第一是这一个 rot, 这个 rot 对象是我们前面创建的这一个创口对象,对吧?啊?在 python 里面的话,只要是一个对象,那么对象就会有自己的方法,会有自己的一个属性啊,在这个地方我们直接给一个对象给一个点,我们看到这里就会提示到很多方法,对吧? 啊?这个的话注意我们是使用这一个 input t k 音的 i 字为 t k 的一个方式去进行导入的,然后我们是 t k 点上一个 t k 去进行创建 啊,这样的话才会出现我们的一个智能提示啊,但是你们在网上可能去找的一些内容,可能会是另外一种导入的一个方式,像 freer, 我们的一个 ticket input, 一个啊, input 的一种新,这种的话它不会有一 一个智能提示啊,所以你看到那些代码的话,你需要去进行一个转换一下,在这里面我们不讲其他的一个方式,我们就统一用这一种吧。啊,那么在这个入团里面,我们就直接可以给一个 title, title 里面我们可以去修改一下它的一个标题,比如说我的一个啊,我的第一个窗口 窗口啊,第二个的话我们还要去设置一下窗口大小, 大小,那么还是我们这一个入头对象,因为我们是设置窗口的一个大小,那么是这一个窗口对象的这一个属性啊,在这里面的话,我们是这一个积木群的这一个属性,积木群里面我们加一个括号 啊,然后括号里面是一个字符串,注意这个字符串里面我们填他的一个大小的时候是我们这样啊,首先的话我们填他的一个宽度,这里面的话我们给一个五百啊,五百,然后我们 再给他 x, 这个 x 的话是代表乘的一个意思,五百乘三百啊,然后我们再给他加上一百,再加上一百啊,那么这一句话是什么样的一个意思,对吧?第一个的话是我们的一个宽主页啊,在这里面的话是我们的一个宽度啊,宽度 x 乘上我们的一个高度, 高度啊,然后去加上我们的一个出现 x 的一个位置在啊, x 的位置,位置啊,然后 y 的位置,这个地方我们是 x 的位置啊,然后加上 y 的位置 啊,位置啊,这个的话应该是我们的一个坐标轴吧,就是我们整个屏幕啊,像这个屏幕的话,他就从我们最上方,就是从最上面这个地方啊,最上面这 这个地方是零零开始的,那么一百的话可能可能是在某一个位置,后面的话像这个地方我们我的屏幕是啊,幺九二零乘幺零八零的,那么最上面是一个零零啊,然后往下面数,往左边数就构成了我们这一个窗体的一个大小,这个地方我们可以运行一下,我们直接给他停止运行一下 啊,像这一个窗口的话,他就会变成我们的一个五百,五百的一个宽,三百的一个高,然后出现在我们 x 的一个位置是一百, y 的一个位置是一百啊,像我可以可以给他改一下 x, 我们给他改成一个两百,那么还会再过来一点点啊,过来大概照到我鼠标所在的这一个位置,这个地方我们再给他去运行看一下 啊,像这样我们直接把它给传递过来了,那么这个的话是我们这一个积木群的这一个内容去设置他的一个窗口大小,设置一个宽高,对吧?啊?那么在这里面还会有一些属性,比如说我想要设置他这一个窗口为半透明的,修改一下他的一些背景颜色什么的, 他都可以去进行一个设置,但是我们暂时不去讲那么多,好吧?啊,暂时我们先把一个最小的一个内容给他搭建好就好了。啊,那么设置这一个窗口之后,我这一个界面上,对吧?光秃秃的什么都没有,那么我们先给一个,给一个啊简单的一个内容给他添加进去,好吧? 啊,这个的话我们是设置窗口的一个对象,那么如果想要在啊这一个窗口里面添加内容的话,如果想在窗口里面添加内容,就需要添加主页 组件。啊,这个各种组件的话,我们在下节课会去讲很多很多的一些组件,我们先来看一个最简单的一个组件,我们可以直接给他直接布局一下。啊,在这里面的话,我们直接给个 label 吧,给个 label, 然后我们给个 label, 直接在这个地方我们给一个 t k, 然后点上我们的一个大写的一个 label 主页。 啊,如果你是宁波的 tk 的 i 字为 tk 的话,那么你 tk 点上一个 label, 这个地方会出现一个智能提示啊,就是除了这个 label 的话,它还有其他的很多很多的一些组件,我们先来看一下这个 label 组件吧。啊,这个地方我们给个 bottle 吧,先给个 bottle, 我们先来体验一下 啊,包在里面的话,第一个是我们这个包在里面的话,第一个要传我们的一个对象,就是我把这一个啊,把这一个按钮对象绑定到哪一个组件上面,这一个是按钮对象 啊,绑定到我们 rot 上面去,然后我们传递一下它的一个属性,我们先给一个 t x t 吧。啊,在这个地方我们是啊给它一个啊,或是第一个窗口,第一个 t k int 窗口 窗口啊,那么在这里面的话,我们就给它创建的这一个,呃,这个地方我们还是把它改成一个 label 吧,我们改 成一个 label 组件, label 的话是一个文字框的一个意思,文字框,文字框啊, 文字框。然后呢?在这个地方我们是创建了一个文字框对象,对吧?第二个我们要把这个文字框给它布局一下啊,布局的话它有三种方式,一个是 pack good, 还有一个 place, 它有三种方式啊,在这里面的话,我们直接给它啊 pack 一下就好了,我们直接给它运行看一下,在这个地方我们给它运行看一下, 像这里面的话就多多了这么一行字,对吧?我是第一个 t k 音的窗口啊,那么这一个的话是我们的一个初体验吧,那么这是我们最简单的一种写法,直接这种顺序结构,从上往下把它给写下来 啊。接下来我们再来看一种方式吧,就如果我不用从上到下,我用另外一种方式去写一下,怎么样啊?我想再来体验一下,就是我们的一个面相对象的一个写法, 哎,这一个的话是我们的一个冥想对象写法, 面向对象做一小窗口案例啊,我们使用这一个面向对象的一个写法的话,我们现在还没有学类,对吧?但是我们学过函数,函数的话是面向对象的一个第一步 啊,那么在这里面的话我们就不用这一个雷博,我们就不直接这样去进行一个创建了,我们用函数能不能用函数去创建这一个雷博对象啊?其实也可以的,我们这可以在这里定一个函数,在这里面的话我们直接给他定一个函数,我们就直接给他一个 creat 啊, creat 的话我们给它换成一个 bottle, 好吧? b u t t o n。 我们给它换成一个 bottle 啊,这个 bottle 里面的话我们去给它接受一个入团对象,然后在这里面的话我们去创建这一个内容,在这个地方我们给它一个 b u t t o n 啊, bottle 的话直接等于我们的一个 t k 点上一个大写的一个 bottle, bottle 对象的话,它要绑定到这一个 rot 对象上 上面去啊,然后我们给他设置一下这个地方,我们给他一个 t e x t, 等于这一个啊按钮的一个内容,这个地方按钮的话就是我们的一个打招呼吧, 打招呼,打招呼啊,打招呼之后的话,我们在这个地方直接直接打招呼,之后我们给他绑定一下这个地方,我们给他一个 butt, 直接给他一个 pack 一下啊,最终的话这一个函数我们最好是给他返回回去,对吧?我们再把这一个 read 给他返回回去, 在这里面我们用的,对吧?啊?我们先来看运行一下,我们在这个地方直接运行看一下,像这一个窗口,他会是光秃秃的一个内容啊? 啊?那么我们要去绑定的话,我们就可以 root, 然后我直接等于这么一个 root 啊,等于这一个 creeto, 我们的一个 button, 然后给上一个 root, 对吧?啊?我们就使用函数的一个方式,使用函数去创建函数啊,绑定事件绑 定啊,对象绑定组件,这个是我们的一个按钮组件,这个地方是我们的一个 bottle 按钮,组件 按钮出现好了,我们就是一个打招呼,我们重新再来运行一下啊,像这样的话就会出现我们这一个打招呼的一个内容,对吧?这个地方我们点击一下这个打招呼啊,像这个地方没有反应,对不对?这个地方没有任何的一个反应啊? 啊?其实在这里面的话我们后面去学,前面的话我们就稍微体验一下,好吧?比如说点击了这一个打招呼之后,我想让他啊去打印一句话,比如说我就打印一个 it, 我就问一下,问一下你吃了没有?这个地方我们直接给他 print 一下这个地方,我们就问一句啊,你吃了没? 哎?你吃了没啊?你吃了没?这个地方我们给他,给他。在这个地方我们需要绑定一个事件,这个地方是我们的一个 command, command 直接等于一个 it 嘴,这一个 it 的话,我们直接传入这一个对象,不传入其他的一个内容啊,直接传入这一个对象,我们再来运行看一下这个地方停止,我们给他再看一下,我们点击这一个打招呼啊,然后下面就会问你吃了没,对吧?我们再点一下,他又问你吃了没,对吧?啊?这一个是最简单的一个事件绑定,这个地方我们是使用的这一个 command 进行一个事件绑定 啊,这个地方是 command 啊,这个参数进行四键绑定 啊,这个的话是我们的一个出体验吧,那么这个出体验我们暂时就讲到这一个地方吧。啊,在后面的话我们可以我们再来去看其他的。关于这一个出体验的话,我们只是讲了一部分,因为还会有其他的一个方式,我们 啊可以同时去进行一个使用吧。这一个我们在后面再详细去进行一个讨论吧。啊?他还有其他的一个方式去进行一个绑定,这一 这是最最基本的一个样式吧,后面的一个内容我们后面再看啊,然后关于这部分没有问题敲个一给我看一下,有问题可以问一下啊,关于里面可能有很多细节我们不清楚是为什么,等后面我们会单独拿出来去讲,关于这一个面相对象封装,我们会用到类啊。然后前面这一些事件绑定的话,我们还有其他的更好的一些方式 啊,关于这些文字可不可以变化,我们后面也有其他的一个内容可以去进行一个修改,那么这一部分的话是第一部分, 呃,这个传字符串比较怪一点。对啊,在我们前面这个地方传字符串的话确实是比较的怪异啊,这个地方的话,呃, 但是这种怪异的话,我们也只能慢慢的去适应这一个内容,我们只能慢慢的去进行一个适应,因为别人就是这样去定义的,那么我们用的话只能用别人的一个方式去进行一个使用啊。这个面相对象我们使用的是一个函数,函数也是一个面相 对象,他是最基本的冥想对象类的话是最高级的,更高级的一点。呃, pack 方法是干啥用的? pack 方法是用于布局的,就如如果你只是呃这一个 pack 的话是用于布局的。 p s k pack 是布局的一个布局的方法。 不觉得啊,也是绑定,就是将组件组件啊绑定到 绑定到界面上,界面上啊,这个界面是我们这一个 rot, 对吧?其实这个 rot 的话,如果我们啊不返回的话,其实也没有影响,因为你这个不返回的话,我只是不去接收就行了,对吧?那么你就不要去进行一个接收 啊,因为我们去创建这一个组建的话,创建这一个组建最终还是要去进行一个 pack 一下才行啊,他还是会有这么一个对象,因为他的一个目的,只要把 这一个,把这一个组件绑定到我们的一个界面上就可以了,即使我这个地方不传一个 rot 也是没啥问题的。不传 rot 也是没问题的啊,但是我们前面学过函数的时候我们有讲过,对吧?函数最好是有参数,函数最好是有返回值,如果你没有参数,没有返回值的话,你用着用,用着用可能会搞混了,对吧? 啊,那么这是我们这也是一个细节点,非常重要的一个细节点,这里面我们还是最好给他返回一下啊,用这种标准的一个形式去写,其实不写也没有关系啊。 啊,这个 park 的话讲的是我们的一个布局方式,在后面的话我们会有三种布局方式,一个是我们的一个 park, 一个是 girl 的,还有一个是 place, 分别对应的是一个 pack, 简单布局他也会有一些参数。啊,后面的参数我们后面讲到布局的时候详细再来看,好吧。啊,这是这一个网格布局,然后 plays 布局,我们等一下都会讲到吧,那么这这是这两个问题。然后这个组件的话我们也只是稍微用了一下, 它里面也会有很多的一些参数,我们可以看一下这一个课件。啊,像我们刚刚讲的这一个波特组件,它会有很多很多的一些属性,等一下我们在。啊,等一下我们一起来看这一个 lab 组件吧,这个 lab 组件里面有很多的一些属性。 啊,那么这一个的话是关于这一部分的一个讲解,那么这一部分的话应该是没问题的,对吧?

大家好,这节课我们使用派森加上 tk 音的就是 gur 的编程来实现一个派森的时钟, 我们创建了一个代码文件叫克拉克点派,然后我们编写我们的代码,那这里边我们都使用标准库内置模块就可以。首先我们导入太阳模块,这里边是便于导入时间的格式化字不串,然后导入 g u i 镜面编程的核心内置库叫 tkand, 然后阿斯特 tk 里边, 在这里把我们使用面向对象的方式写一个类叫克拉克继承字, tk 下边的大写 t 开着 tk, 他其实就是我们的窗体。然后编写我们的构造函数,在构造函数执行的时候呢,先执行一下激烈的构造函数,然后执行我们自 的逻辑。首先呢我们将当前窗体的标题改一下,我们叫他优特编程的拍层时钟, 好,那窗体打开的时候呢,他标题栏就会显示这样一个标题文字,然后接下来我们构造一个标签的实力, tk 下的雷宝宝,我们构造一个标签,他依附于我们当前窗体的跟窗体,那跟窗体就是我们的克拉克的实力,那就是 cf, 别忘了。 然后接下来指定一下文本,那这里我们先把它写死,这四个字时间显示,那后边呢,我们可以指定一些参数,比如说我们定义他的字体, 那这里边字体呢?我们选择一个 ds 杠 dx, 那这里边是时间的一个数字格式的字体啊,字号呢?比如说我们把它指定为八十,这个字体呢?不是文都自带的,那我们需要单独去下载安卓, 那稍后呢,我们会提供给大家,大家可以直接从我的公众号下载,然后我们再指定一下当前内部内容,也就是文本,他横向和纵向方向那距离那比都十个像素。 然后指定一下当前标签的背景色为黑色,前景色为青色,那这些都直接使用字不串来指定他的颜色,当然这是内置好的颜色名称。然后接下来呢调用他的方法帕克,那就将他真实的依附在当前的窗体上, 然后当我们运行那个脚本的时候,我们使用刚才的克拉克这个类去构造一个实力叫 app, 然后运行他啊,事件循环没漏。好,我们先看一下,目前呢只是一个汉字,并且是静态的,他不会更新拍摄。运行一下克拉克点派,那这个时候呢,窗体已经打开了, 文字已经显示了,并且刚才设置的一些属性样式呢都已经起作用了。好,接下来的话,我们要完成的工作是让他显示时间,并且让他每一秒都更新,这工作呢,我们可以这样做, 把更新时间的操作呢定义到一个方法里边,由于我们把刚才的逻辑组织到一个类克拉克里边,所以接下来我们在这个类下面添加一个实力方法叫 ipad, 看实力方法加上 cf。 好,这里做什么工作呢?这里边告诉他说 标签上的文本是来自于一个变量,这个变量呢,我们把它声明在构造函数里边,说当前的创题有一个变量成员叫 tomtx, 叫时间的文本,那文本是什么呢?我们先把它预制为空,然后呢在构造勒脖的时候呢, 指定他的 tx 是等于当刚才我们构造的 tmtys 的这个变量,然后接下来呢,在我们 fddty 这个方法里边,我们重新去给他复制,说你那个 tmtys 文字是来自于什么呢? time 的思追 看就是获取当前的时间,并且按照后边指定的格式化字步串格式来显示,那这里百分号加 h, ms 就是十分秒,中间以冒号分隔,后边是百分号 p 呢就显示 am, pm 就是上午下午。然后我们重新调用雷伯的咖啡格,重新去 配着他的文本,为刚刚更新的这个时间字不串窗体。有一个方法叫阿福特,就是一个事件回掉函数,就是 在特定的时间之后执行一个特定的操作,比如说一千毫秒,就是一秒钟,执行哪个呢?执行当前窗体的 fditty, 也就是我们现在正在定义的这个方法本身。 讲而言之,当前这个方法就是说每隔一秒钟更新一下文本,那好,那写完之后呢,我们在刚才一米的勾的函数构造完那本标签之后呢,就立马调用一下,也就是说刚开始构造的时候,他的文本就调用了,阿不对的太来帮我们显示, 这交警跟着我们来测试一下,运行一下当前的脚本,拍死运行克拉克点派,这个时候呢,发现呢,他已经实现了,就是窗体上有一个文本标签,文本标签每隔一秒钟一千毫秒显示当前的时间, 并且是经过格式化字符串来显示的,那这里边格式化字符串不了解的同学可以尝一下文档,那前面我们还可以加上连月日。注意这里边不仅仅是百分号加字母这么一个格式,一个字母的大小写他也有不同的含义,比如说大写的 m 表示分钟,小写的 m 就表示貌似月份, 那这样我们又加上了连月日,那最终的结果就是现在看到的这个效果。整体的代码量呢?并不多,只有三十几行代码,但这里边设计到了拍成 tk 的模块,就是内置的桌面窗体编程的一个基本框架模块。然后了解一下日期、时间和格式化的一些处理。 整个的源码以及所使用到的第三方的字体呢?提供下载,关注我们的微信公众号,优特编程,回复关键字克拉克就可以下载源码和字体。


接下来给大家带来关于计算器的一个布局,我们先来看一下整体的效果,当我们运行这个计算器之后的话,他会弹出这一个程序,在这个地方我们可以去点击八和九,然后我们去加上一个六,等于啊 九十五,然后你可以继续去加,然后继续去减,然后可以进行一个啊计算吧,最终算出这些结果。然后我们来做一下整体的一个布局,首先把这个内容给他截取出来啊,那么我们给他关闭一下,然后我们要做的是计算器的布局,计算器布局, 嗯,计算器布局,首先的话,我们需要一个窗体,所以我们是 input, 这一个 tk 应特矮字为 tk 啊,那么我们 rutrut 等于一个 tk 点上一个 tk, 然后加上一个括号,然后 rut 点上一个 jm 曲 啊,在这个地方我们设置一个窗口,整个窗口的话大概是一个三百,三百乘三百的,但我们在这个地方的话是里面会去调他的一个 啊,编剧,所以我们要调整一下这个地方是一个二百九十五乘上一个二八零的一个大小,然后去加上一个一百,加上一个一百啊,那么我们整个的一个标题入特点上一个开头,然后是一个简易计算器,简易计算器,简易计算器, 好了,我们再给他一个入特点上一个门路破呃,给他运行看一下,首先整体的一个窗口,给他运行一下这个窗口是没有问题的,对吧? 啊?但是我们这个窗口刚刚我们在弄的时候,其实他是一个半透明的一个状态啊,并不是说我们直接一跑出来之后,他就得到了我们想要的一个结果,所以我们还需要去调整一下整体的 一个窗口,你看这个窗口,他是一个半透明的这个计算器啊,他还能透透穿出去,所以我们要半透明的话需要去设置一下这一个 hippos 的一个属性,如果想要设置他的一个背景,就用这个白壳 ground 的, 嗯,在这个地方我居然看到的,就不手动去敲的吧,直接粘贴过来,是一个固定的,就是设置一下啊,不透明度零零九,然后这是他的一个背景,为一个 f f 的一个颜色啊。之后这个地方我们做好之后来布局下面的一些内容, 哎,下面的话整体首先是上面这一个,对吧?上面这个地方应该是我们的一个 labor 显示最新的这一个状态, 其实这个内部的话,他的一个属性是会发生改变的,所以我们去给他一个瑞兆特啊,瑞兆特兰博,然后等于一个 tk 上一个死角瓦,嗯,死角瓦这一个是一个可变的,可变的,我们就 瑞加奥特点上一个兰博,点上一个 c 特,我们默认给他设置为一个零,好吧,呃,那么我们来了,在这个地方的话,我们是一个 tk 点上一个雷宝,这个雷宝的话我们布局在入特对象上面,去 啊,之后他的一个文字是 tax one new a 宝的一个属性, tax one new a 宝没有,我们点进去啊,在这个地方的话复制一下啊, 他可是完牛一宝,他的一个可变面料绑定的话是这一个瑞兆的 anu 啊,之后在这个地方我们去给他的一个啊,宽高大小的话,等一下还要跨行以及跨列,这个地方我暂时就先不做了,好吧?我们在这个地方直接给他布局一下啊。 嗯,整体的布局的话,我们在这个地方需要用的一个个的网格布局啊,这个网格布局的话,它是分为几行几列的,在这个网格布局里面我们直接给他一个 row 肉的话,我们等于 一个一啊,然后它的一个可能是由 l u m n 啊,可能是由 l u m n 啊,可能我们也等于一个一,第一行第一列,那么我们 来运行看一下,在这个地方的话有一些属性,我们等一下需要做一个调整啊,包括他的一个字体太小的,对吧?这个字体的话我们可以去给他改一下,在这个地方我们可以加一个放特, 放头的话我们等于一个宋体吧,宋体,宋体。然后给他一个二十号的一个啊,字体的一个大小啊,因为这个放头我们在后面会很多地方都会用到他,所以我们给他定义成一个变量,好吧?定义成一个变量后面用起来会方便一下,所以是一个放头啊,放头等于一个放头就好了 啊,那么是一个字体之后他的一个对齐方式的话,对齐方式后面来调吧,那么第一个我们应该是做好了,嗯 的话做好的,那么我们先把下面做做完,然后再处理上面的。上面这个地方高度应该是给一个 hat, 我们给他一个奥啊, hat 等于一个奥,应该是占两行的一个高度才对。 运行看一下,在这个地方啊,两行的高度够了吧?等一下再调整他的一些信息啊,那么我们先来看一下第一行啊,第一行我们需要把这一行做出来,对吧?这一行的话我们大概是四个按钮,以及四个按钮里面会有他们自己的一个样式啊,那么我们先来第一个吧,第一个是一个煲汤可料, 这一个是清空,当我们点击清空的时候,可以把里面的东西全部给他去掉啊,那么是等于一个 tk 点上一个 bot, bot 布局的话应该是入他对象上面去。呃,之后我们给他的一个文本应该是等于一个 c, 对吧?等于一个 c, 之后他的一个宽度位置的话,我们等于一个 在这个地方位置等于一个五啊,之后这个地方给他一个放特,这个放特的话不与放特相同吧?上面是一个二十,下面放特我们给他改小一点,放特一十六吧。 呃,一十六的一个字体,那么我们给他一个放他一十六,在这个地方是给他的一个字体啊,之后他对齐的一个样式。瑞瑞福啊,瑞瑞福的话我们等于一个 tk, 点上一个 tk, 点上一个福辣条。

好,今天我们使用拍摄的 tkent gui 来实现一个登录的窗体, 那已经做好的有一个灯,我们先看一下,就是目前看到的一个结果,窗口是三百乘二百的,有一些图片,文字,标签,文本框,按钮等等。好,这是一个基本的布局,接下来我们看代码,具体的实现登录按钮没有实现操作取消按钮呢?可以关闭当前的窗体。 好,我们使用的图片呢,就是我们这个 bg, 点击 bg, 然后我们接下来在呆默这个空代码里边逐一去实现我们的需求球。 首先导入必要的组件库,这里面的核心是 tk 因特以及 p i l, 那二十三以上装的是 plue, 导入一个叫 emazh 和 emax tk 的两个类。 那我们的窗体和空间呢?我们是以面相对象的方式来组织,我们写一个类似 f 的 k 线让他继承字 t k 下边的大写 t 开的是 t k, 他本身就是一个窗体,在阴历的构造函数里边,我们继承一下积累的呃勾搭函数, 然后通过太的方法初始化一下标题栏的文字,再通过 gm 这方法初始化我们的窗底的尺寸为三百乘二百个像素,然后在程序的入口里边初始化我们的 ak 型类型的实力,然后调音的 mlop 循环来让我们程序运行。 此时的代码结构比较简单,只是初始化一个窗体,加上一个个的函数,那执行两行代码就是做标题栏和尺寸的初始化。好,我们运行一下当前的 dm 点派,那目前看到的窗体就是一个三百乘二百的空白窗体。接下来将我们的空间 说实话的操作呢,单独定义到一个方法里边,我们叫他印里的 v 字词,因为他是类的实力方法,我们加上 cf 作为关键字,然后在印里的搁到函数里边,把它调用一下。 空间的第一件事情就是准备好我们的图片,我们生命好一个变量叫 foto, 它是来自于 emaj tk, 他是来自于 prl 明空间下边的有一个叫 fote mat 出手画,然后再通过 emaj 的 open 打开当前位置就叫 bg 连接 pg, 好,这样得到一个内存里边的图片 foto, 然后再把它显示到一个 vivo 标签上,但目前 vivo 标签没有这个地方。我们构造一个说当前创体的 vivo ema 九是来自于 tk 下边 vivo 帮我们构造的,他所依附的对象就是当前的创体本身 cr, 然后指定他的一米九是就是刚才的包头,然后他的宽呢跟窗体是一致的,那高是五十,然后接下来再加一句说,来吧,一米九,你的一米九是来自于刚才勾搭好的 booto, 然后呢再把当前的标签把它定位在我们的窗体上, 然后这个时候我们看到图片已经显示出来了,接下来我们就是做下部的标签和文本框,但是呢我们向整体周边的留出一定的范围来,所以说我们给他做一个大的容器,是否认框架是来自于 tk 命名空间下部的类型就叫福瑞 好默认型呢,他是不显示,只是界定一个范围。然后我们构造完毕之后呢,接下来我们就可以直接把它定位在我们的整个窗体上,我们说当前的窗体 freme 使用派克方法 帮我呈现在当前的窗体上,那这里边加上一个参数。首先呢我们要让他横向流出二十个像素,就是左右各流出像二十个像素,那纵向 pad y, 那流出五个像素,然后让他横向的填充 tk 的 x, 在这个框架容器里边,我们准备好一些标签或者文本框,比如说显示用户名的,我们叫做 libus 类,同时通过 logo 构造的,这次他显示的容器就是刚才的, 呈现的文字叫做用户名,那这里文字的对齐呢?不是按捺,它有一个叫安口叫毛点,指向 tktw, 这个 w 指的是 vs 的西边就上北下南,左西右东,左边就是 ys 的,然后 pat 填充到框架里边,那这样看到用户名这个标签文本就已经成 显出来了。那同样在下边呢,我们再加上一行用来输入用户名的文本框,是来自于 tk 下边的 n 区。好,他所在的空间呢,也是刚才的, 那同样我们把它定位显示通过 bug, 那这里边占整行的空间,我们都指定一个属性叫 fal 等 tk 的 x, 也就是说填充是横向,这样的话呢,就是窗体外侧的容器有多宽,他就占多宽的宽度。 下面两行分别是密码框的标签和文本,那由于是一致的,直接可以把它复制粘贴,然后改一下他的变量名称,将优思类目改为 pass 五的。好,内部两行,文本框两行。然后接下来呢,我们直接改一下他显示的 文字叫密码,其他不变,我们来看一下结果这个时候用户名和密码框都已经呈现了,但他都是普通的,我们框密码框里边是以铭文的方式显示字符,那不符合我们的需求,那我们直接在刚才的 tk 的 nt 构造密码框的时候加上一个属性序号,等于信号, 建议来,不管你输入什么,他显示的都是新号,但是取值的时候还是真实的文本,这个不用担心。接下来有两个按钮,我想放到一行里边,所以说把它的宽度呢变窄一点,然后一个放到左边,一个放到右边,首先登陆的,我们叫他八千落定 八点构造的也是显示在福瑞姆框架里边,文本是登录,那宽度呢?我们指定为十六下边的停靠在左边,这一次呢,我们不是使用安靠毛点来指定,而是使用赛的。 我们看一下效果,那我们看到左边的灯的按钮已经出来了,已经放到想要的位置,接下来在同一行,我们想放一个取消的按钮,那构造的方法跟刚才一样,只不过是我们把他的停靠的位置呢放放到右边就 tk 的 red。 好,我们看一下效果,这个时候已经满足我们的要求了,那这个时候呢,按钮都没有响应事件,接下来的话呢,我们来做一个取消,那这里边主要是通过按钮的靠慢的属性 可以指向一个已经定义好的函数,那这里逻辑比较简单的话,直接可以使用拉麦的表达式也可以,那因为只有银行代码,那关闭当天的窗口就四 f 本身的 disco 位就可以了, 再看一下结果好点一下取消当前的窗体就关闭了。好,这样我们就快速的体验了一下 tk 音的窗体,这些基本构 造和控制的出手画的一些基本概念,那这里面用到了图片类位、标签、文本框、按钮等等,他的布局方式其实有很多种,那这里边只是简单介绍了一些 pat, 如果需要源代码,可以关注我们的微信公众号,优特编程回复规定字窗体登录就可以下载, 下载圆满。最后,如果你觉得这个视频对你有用的话,别忘了点赞、关注、转发、评论我们的视频。

这一个当你自己去实现的时候,你可以改成自己的。那么在这个地方我们先看一下露露,比如说我就随便给一个啊,在这个地方我给一个萌新, 萌新啊,萌新成绩的话给一百分吧,我给自己打分的话,肯定是满分啊,这个不用说。然后点击一个露露,露露成功。成功之后,我们可以来进行一个查询,像这个地方萌新是一个满分的对吧? 啊,那么我觉得他这个分数太高了,我觉得要减一点点,毕竟别人别人都没几个,你一个人全部满分对吧,有点过分啊。所以我们修改一下。在这个地方的话,首先去找一下萌啊,萌新 梦醒,然后然后先查询一下,查询到之后的话,我们查询到之后可以进行一个修改。比如说原本一百分啊,一百分太过分了,我们给个一百零一吧,给个一百零一。好吧,那么修改一下。