python3下GUI界面设计之控件精确定位
#codeing:utf-8
import tkinter
import tkinter.messagebox
from tkinter import filedialog
from tkinter import *
#定义响应函数
def CopyCmd():
tkinter.messagebox.showinfo("消息框","这是一个消息框\n你选中的是复制")
def PasteCmd():
tkinter.messagebox.askokcancel('提示','这是一个消息框\n你选中的是粘贴')
def OpenFile():
r = filedialog.askopenfilename(title='打开文件', filetypes=[('Python', '*.py *.pyw'), ('All Files', '*')])
e1.delete(0,END) #清除输入框
e1.insert(10,r) #输入框赋值
a1=e1.get() #取得新值
print(a1) #打印新值
def SaveFile():
r = filedialog.asksaveasfilename(title='保存文件', initialdir='d:\mywork', initialfile='hello.py')
print(r)
#开始描绘界面
root=tkinter.Tk()
root.title('自定义GUI界面')
root.geometry('400x300+380+120') #自定义窗体大小
root["bg"] = "peru" #窗口背景色
root.resizable(False, False) #固定窗体大小
#标签
label=tkinter.Label(root,text="这是一个提示",font=("宋体",9,"normal"),fg='blue',bg='peru')
label.place(relx=0.085, rely=0.07)
#输入框
e1=tkinter.Entry(root,width=40,font=("宋体",9,"normal"),bg="lightblue",fg="midnightblue")
e2=tkinter.Entry(root,width=30,font=("宋体",9,"normal"),bg="lightblue",fg="midnightblue")
e1.place(relx=0.085, rely=0.15)
e2.place(relx=0.085, rely=0.25)
e1.insert(10,"这是默认值")
e2.insert(12,"这是第二个输入框")
#按钮
button1=tkinter.Button(root,text="打开文件",font=("宋体",9,"normal"),fg='red',bg='wheat',command=OpenFile)
button1.place(relx=0.1, rely=0.8, relwidth=0.2, relheight=0.13)
button2=tkinter.Button(root,text="保存文件",font=("宋体",9,"normal"),fg='green',bg='wheat',command=SaveFile)
button2.place(relx=0.35, rely=0.8, relwidth=0.2, relheight=0.13)
#定义一个右键菜单
menu=tkinter.Menu(root,tearoff=0)
menu.add_command(label="复制",command=CopyCmd)
menu.add_command(label="粘贴",command=PasteCmd)
menu.add_separator()
menu.add_command(label="剪切")
def popupmenu(event):
menu.post(event.x_root,event.y_root)
root.bind("<Button-3>",popupmenu)
root.mainloop()
python3下GUI界面设计之控件精确定位的更多相关文章
- 界面设计-Edit控件的Style设置
以下文字转贴ChinaCock QQ 223717588群: 1. 首先在Form上放一个TEdit类型控件Edit1,最终的效果如下图: 2.选中控件Edit1,点击鼠标右键,在弹出菜单中选择“Ed ...
- MATLAB(3)——GUI界面设计入门
作者:桂. 时间:2017-03-01 18:43:35 链接:http://www.cnblogs.com/xingshansi/articles/6485688.html 声明:转载请注明出处, ...
- asp.net中遍历界面上所有控件进行属性设置
* 使用方法: * 前台页面调用方法,重置: protected void Reset_Click(object sender, EventArgs e) { ...
- GUI学习之四——QWidget控件学习总结
上一章将的QObject是PyQt里所有控件的基类,并不属于可视化的控件.这一章所讲的QWidget,是所有可视化控件的基类. QWidget包含下面几点特性 a.控件是用户界面的最小的元素 b.每个 ...
- Excel开发学习笔记:界面交互与控件的布局
遇到一个数据处理自动化的问题,于是打算开发一个基于excel的小工具.在业余时间一边自学一边实践,抽空把一些知识写下来以备今后参考,因为走的是盲人摸象的野路子,幼稚与错误请多包涵. , ).value ...
- PyQt5多个GUI界面设计
版权声明:本文为博主原创文章,转载 请注明出处:https://blog.csdn.net/sc2079/article/details/90454379 - 写在前面 本科毕业设计终于告一段落了.特 ...
- android 支持上拉加载,下拉刷新的列表控件SwipeRefreshLayout的二次封装
上拉加载,下拉刷新的列表控件,大家一定都封装过,或者使用过 源代码,我会在最后贴出来 这篇代码主要是为了解决两个问题 1.滑动冲突得问题 2.listview无数据时,无数据布局的展示问题 下方列出的 ...
- Asp.net绑定带层次下拉框(select控件)
1.效果图 2.数据库中表数据结构 3.前台页面 <select id="pid" runat="server" style="width:16 ...
- 不在界面上用控件 动态创建idhttp,IdAntiFreeze来用
不在界面上用控件 动态创建idhttp,IdAntiFreeze来用 var IdHTTP: Tidhttp; IdAntiFreeze: TidAntiFreeze; begin IdAntiFre ...
随机推荐
- javascript 创建节点和新增节点
createElement(tabName) 创建一个为tagName的新元素节点 ANode.appendChild(BNode)把B节点追加至A节点的末尾 insertBefore(ANode,B ...
- (转)Unity_什么是Draw Call? 什么是Batch?
開發遊戲時,一定被時時提醒要減少 Draw Call,當然UNITY也不例外,打開Game Window裡的 Stats,可以看到 Draw Call 與 Batched 的數字.但到底甚麼是 Dra ...
- c# 获取 com 引用真实组件地址
1.根据guid获取 var clsid = new Guid("63EA2B90-C5A8-46F4-8A6E-2F2436C80003").ToString("B&q ...
- How to detect, enable and disable SMBv1, SMBv2, and SMBv3 in Windows and Windows Server
转自:https://support.microsoft.com/en-us/help/2696547/detect-enable-disable-smbv1-smbv2-smbv3-in-windo ...
- Handlebars.js registerHelper
Handlebars.registerHelper('link', function (text, url) { text = Handlebars.Utils.escapeExpression(te ...
- TCL 引用同目录下其他脚本文件--source
方法一: source [file join [file dirname [info script]] Export_inp_by_loadstep.tcl] 方法二: source [file jo ...
- C# 如何获取SQL Server 中指定数据表的所有字段名和字段类型
如何获取指定数据表的所有字段名和字段类型.SqlConnection.GetSchema方法有2个重载形式,获取指定数据表的所有字段名和字段类型的秘密就在GetSchema (String, Stri ...
- java 乱码问题集
场景1:刚复制来的java类乱码,反复修改无果 解:将java类用NotePat++打开,可正常显示,复制过来即可.
- MySQL事务的介绍+事务的特性+事务的开启
事务介绍: 简单的说,事务就是指逻辑上的一组SQL语句操作,组成这组操作的各个SQL语句,要么全成功要么全失败. 例如:A给B转账5元,流程是从A的账户扣除5元,把5元打入B的账户,B的账户上收到5元 ...
- 本文讲述下windows下使用rsync备份数据
本文讲述下windows下使用rsync备份数据 需要使用的软件如下: 环境需求: 上海monitor上跑有定时任务计划备份线上数据库,现在需要把上海monitor上的备份数据拉回到179.12数据回 ...