学习笔记(49):Python实战编程-place布局

立即学习:https://edu.csdn.net/course/play/19711/343111?utm_source=blogtoedu

1.place布局:

1)最灵活的布局方式,是根据坐标点来进行组件的位置布局的

2)确定坐标点后,组件从坐标点开始展开,即以指定坐标点为组件的左上定位点

3)组件.place(x=,y=)

 

2. place直接布局

image_label_1 = tkinter.Label(root,image = image)
image_label_2 = tkinter.Label(root,image = image)image_label_1.place(x = 50,y = 50)
image_label_2.place(x= 100,y = 100)

 

import tkinter#导入创建窗体的相关模块
import osimage_path = r'C:\Users\jinlin\Desktop\python_further_study\GUI编程\resources'  + os.sep + 'linlianqin.gif'#因为每个平台的分隔符不一样,所以用os.sep可以自动切换到相应平台的分隔符class Mainwindow():#创建窗口类def __init__(self):root = tkinter.Tk()#创建主体窗口root.title('linlianqin')#定义窗体的名字root.geometry('500x500')#定义窗体的初始大小root.maxsize(1200,1200)#设置窗口可以显示的最大尺寸#----------------------对组件进行place布局-------------------------image = tkinter.PhotoImage(file = image_path)image_label_1 = tkinter.Label(root,image = image)image_label_2 = tkinter.Label(root,image = image)image_label_1.place(x = 50,y = 50)image_label_2.place(x= 100,y = 100)root.mainloop()#显示窗口,这个代码一定要放在所有窗口设置的后面if __name__ == '__main__':Mainwindow()#将窗体类实例化

 

3. place布局加组件拖拽事件,一般有拖拽事件的都是使用place布局的

    self.image_label_1.place(x=0,y=0)self.image_label_2.place(x=50,y=50)self.image_label_1.bind("<B1-Motion>",self.label_move_1)self.image_label_2.bind("<B1-Motion>",self.label_move_2)self.root.mainloop()  # 显示窗口,这个代码一定要放在所有窗口设置的后面#定义组件拖拽功能
def label_move_1(self,event):self.image_label_1.place(x=event.x,y = event.y)#event事件中含有下x,y坐标点的信息def label_move_2(self,event):self.image_label_2.place(x=event.x,y = event.y)
import tkinter#导入创建窗体的相关模块
import osimage_path = r'C:\Users\jinlin\Desktop\python_further_study\GUI编程\resources'  + os.sep + 'linlianqin.gif'#因为每个平台的分隔符不一样,所以用os.sep可以自动切换到相应平台的分隔符class Mainwindow():#创建窗口类def __init__(self):self.root = tkinter.Tk()#创建主体窗口self.root.title('linlianqin')#定义窗体的名字self.root.geometry('500x500')#定义窗体的初始大小self.root.maxsize(1200,1200)#设置窗口可以显示的最大尺寸#----------------------对组件进行place布局-------------------------self.image = tkinter.PhotoImage(file = image_path)self.image_label_1 = tkinter.Label(self.root,image = self.image)self.image_label_2 = tkinter.Label(self.root,image = self.image)self.image_label_1.place(x=0,y=0)self.image_label_2.place(x=50,y=50)self.image_label_1.bind("<B1-Motion>",self.label_move_1)self.image_label_2.bind("<B1-Motion>",self.label_move_2)self.root.mainloop()  # 显示窗口,这个代码一定要放在所有窗口设置的后面#定义组件拖拽功能def label_move_1(self,event):self.image_label_1.place(x=event.x,y = event.y)#event事件中含有下x,y坐标点的信息def label_move_2(self,event):self.image_label_2.place(x=event.x,y = event.y)if __name__ == '__main__':Mainwindow()#将窗体类实例化

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/256835.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

cobbler基础安装

epel源安装rpm -ivh epel-release-6-8.noarch.rpmyum -y install cobbler httpd rsync tftp-server xinetd dhcp cobbler-web koan pykickstart* fence-agents* debmirror syslinux$$$$$$$$$$$启动cobbler服务/etc/init.d/cobblerd start$$$$$$$$启动httpd服务/etc/init.d/http…

[ActionScript 3.0] NetConnection建立客户端与服务器的双向连接

一个客户端与服务器之间的接口测试的工具 <?xml version"1.0" encoding"utf-8"?> <!--- - - - - - - - - - - - - - - - - - - - - - - - - * author:Frost.Yen * E-mail:871979853qq.com * create:2016-7-13上午12:10:20 - - - - - - - - - - …

C++ share_prt 简单设计和实现

C 比较烦恼的是内存的管理&#xff0c;new是简单&#xff0c;不够&#xff0c;delete偶尔就会忘记。或者说&#xff0c;出现&#xff0c;多个对象共享多一个内存&#xff0c;一个delete以后&#xff0c;导致其他也不能用的不良情况&#xff0c;所以就跑出了一个智能指针来进行管…

PID控制无人机

1、有效的办法就是&#xff0c;根据距离目标值的远近来调节云台的速度&#xff0c;离得远就转快一些&#xff0c;离得近就慢一些。这样就需要我们实时获取云台当前的实际角度&#xff0c;然后和目标角度做对比&#xff0c;根据差值来动态地调整云台的速度和方向。 2、根据无人…

学习笔记(50):Python实战编程-Frame

立即学习:https://edu.csdn.net/course/play/19711/343112?utm_sourceblogtoedu 1.Frame:是内嵌布局管理器&#xff0c;针对不同功能的组件进行区域划分&#xff0c;在各自的区域内可以使用不同的布局&#xff0c;但是总的frame布局方式还是一致的 2.以计算器为例 步骤&#…

SVN使用MySQL验证用户名密码(HTTP)

安装过程全部采用yum 1yum -y install subversion httpd mod_auth_mysql mod_dav_svn mod_ssl 使用MySQL验证是依赖于mod_auth_mysql 主要配置文件 12345678910111213141516171819202122<Location /svn > DAV svn SVNParentPath /var/www/html/svn AuthType Basic AuthNa…

Cent OS 6.4安装mysql

Cent OS6.4 RPM安装mysql 一、卸载掉原有mysql 因为目前主流Linux系统版本基本上都集成了mysql数据库在里面 如下命令来查看我们的操作系统上是否已经安装了mysql数据库 [rootxiaoluo ~]# rpm -qa | grep mysql  // 这个命令就会查看该操作系统上是否已经安装了mysql数据库 有…

学习笔记(51):Python实战编程-ListBox

立即学习:https://edu.csdn.net/course/play/19711/343113?utm_sourceblogtoedu listbox 知识点&#xff1a; 1)创建listbox: self.item_listbox tkinter.Listbox(self.root,selectmode "multiple", font("微软雅黑",12),fg "black",bg &…

C++简单工厂模式

核心思想&#xff1a;用一个工厂类根据不同的输入条件new出不同的派生类指针&#xff0c;然后由多态调用不同派生类中virtual函数&#xff0c;得到不同的结果 所有的判断处理在工厂类中完成&#xff0c;通过CreateFactory函数&#xff0c;根据不同的类型&#xff0c;new出派生类…

Saltstack的pillar组件(6)

pillar也是Saltstack最重要的组件之一&#xff0c;其作用是定义与被控主机相关的任何数据&#xff0c;定义好的数据可以被其他组件使用&#xff0c;如模板、state、API等。在pillar中定义的数据与不同业务特性的minion相关联&#xff0c;这样不同的minion只能看到自己匹配的数据…

redis投票计数

<?php /*** * 缓存利用测试&#xff0c;这里我们获取传过来的投票数据&#xff0c;每次加1&#xff0c;如果增加到了设定值&#xff0c;才将投票* 次数写回mysql&#xff0c;这大大减轻了与mysql链接的开销&#xff0c;redis的使用由此可见一斑* var unknown_type* 来自&am…

在linux系统中安装VSCode(Visual Studio Code)

1.从官网下载压缩包(话说下载下来解压就直接可以运行了咧,都不需要make) 访问Visual Studio Code官网 https://code.visualstudio.com/docs?dvlinux64 我是64位的: wget https://az764295.vo.msecnd.net/stable/7ba55c5860b152d999dda59393ca3ebeb1b5c85f/code-stable-code…

学习笔记(52):Python实战编程-Radiobutton

立即学习:https://edu.csdn.net/course/play/19711/343115?utm_sourceblogtoedu 单选钮&#xff1a;Radiobutton 1&#xff09;相对于大部分组件而言&#xff0c;最大的区别在于单选钮绑定事件是直接通过构建单选钮时方法中的command参数来进行事件的绑定&#xff0c;而其他的…

Linux文本查看命令之touch

touch可以用来创建文件或者修改文件的时间戳如果touch的文件不存在&#xff0c;就创建改文件touch命令可以修改文件的Access time和 Modify time-a 可以仅修改Access time注意&#xff1a;由于Access time的改变&#xff0c;Change time也改变了&#xff0c;但是如果cat该文件&…

dedecms手机站要同步pc站的图片

首先在dede目录下面找到 /include/extend.func.php 文件 //添加自定义函数 function replaceurl($newurl){ $newurlstr_replace(src"/1304/,src"http://www.xxx.com/1304/,$newurl); return $newurl;} 函数调用&#xff1a; functionreplaceurl(me) 例如&#xff1…

使用腾讯开发平台获取QQ用户数据资料

<今天是七夕&#xff1a;祝大家七夕嗨皮&#xff0c;前可么么哒&#xff0c;后可啪啪啪> Tips&#xff1a;本篇博客将教你如何使用腾讯开发平台获取QQ用户资料 ------------------------------------------------------------------------------------------------------…

C++的命名规范

1、 变量名前缀 i_ 类内数据成员&#xff08;对象级成员&#xff09; instance scope c_ 类内静态数据成员&#xff08;类级成员&#xff09; class scope g_ 全局变量 global scope f_ 文件作用域变量&#xff08;静态变量&…

LINUX REDHAT第十单元文档

1.系统日志默认分类#### /var/log/messages##系统服务及日志&#xff0c;包括服务的信息&#xff0c;报错等等 /var/log/secure##系统认证信息日志 /var/log/maillog##系统邮件服务信息 /var/log/cron##系统定时任务信息 /var/log/boot.log##系统启动信息 2.日志管理服务rsyslo…

学习笔记(53):Python实战编程-Checkbutton

立即学习:https://edu.csdn.net/course/play/19711/343116?utm_sourceblogtoedu 复选框Checkbutton:与单选框是相对的&#xff0c;一些用法都是类似的&#xff0c;见单选框 注&#xff1a;在设置复选框的title和index时&#xff0c;设置为选中时onvalue 1,未选中offvalue 0 …

svn merge 回滚

聊一聊 svn merge 命令。 svn 是啥就不用介绍了吧&#xff0c;谁用谁知道。有了 svn&#xff0c;开发者只要把代码提交上去&#xff0c;无论山崩地裂、电脑进水、硬盘格式化&#xff0c;哪怕换了一台电脑&#xff0c;都能随时把代码找回来。不过从自己工作中看到的现象来说&…