python_Tkinter使用过程中的一些小的总结

1.可以用Frame搭配grid来模拟H5网页布局,大盒子套小盒子,然后控件名就是CSS选择器

2.有文字的控件长宽是行数而不是像素

3.窗体可以使用resizable(0,0)方法来控制不可缩放

4.可以使用Font函数来设置总字体,然后每个控件font直接等于变量名就ok    //set_font = Font(family='微软雅黑',size=12)

5.Frame内部有控件时,设置其宽高是没有意义的,因为会塌陷到控件宽高,但是控件宽高如果设置的非常大会影响美观

  解决办法:在每个Frame内部使用grid布局放置控件,控件外边距不设置(即padx、pady),在grid布局时加入padx、pady控件,以达到控件可以在单元格中悬浮而不是占满

  例:

  展示效果为:

 

 6.Text控件(展示多行文本控件)使用:

  - 可以加上state=DISABLE属性让此控件不可输入

  - 可以使用state=NORMAL属性来恢复正常

  - 可以使用control_name.config(state=DISABLE/NORMAL)来动态控制(所有控件都可以用config函数,control_name为自定义控件名

 

 

//20200328update

如有新的内容再来更新

================================================

7.text控件保持焦点一直在最后:

  使用text.see(END)此方法即可

8.entry控件中需要设置textvariable属性为一个外界设置的StringVar值,才能保证控制entry框内内容,但是不同的entry框如果用一个textvariable变量的话,则在一个框输入,另外一个框也会显现;

  另,如果要在事件发生完之后将entry框清空,则使用v1.set('')方法(v1为外界设置的StringVar名称)

9.要在其它类中操作可视化界面控件,则传入相应对象即可,可以使用全局变量关键字global来进行赋值,而不用每个方法都传入

 

//20200331update

如有新的内容再来更新

================================================

 

10.在一个tk根窗体内需要弹出有图片的窗体时,不能够使用Tk()生成新窗体,需要使用Toplevel()方法,否则会报“图片不存在”错误

11.在弹出窗口退出时,需要调用quit()和destroy()两个方法,否则窗体还在循环,只是控件都被销毁了,这样数据是传不出去的(必须两个都调用,我的顺序是先quit后destroy,不知道颠倒是不是一样效果)

12.在text文本域控件中,只能加入字符串,而不能加入诸如字典之类的东西,和print函数不一样,如果要加入字典之类的,需要用str函数转换

 

//20200401update

如有新的内容再来更新

================================================

13.使用pandas包里的dataframe方法是,如果使用字典,则需要将字典变换为两个列表,然后设置dataframe传入参数为value设置index为key,方可生成表

14.在使用matplotlib.pyplot包的方法来显示图像时,因为它本身不支持中文,所以需要去改配置文件,将其安装目录下的matplotlibrc 配置文件如下图更改(含义为增加支持中文字体)

 

 更改完就可以显示了,否则显示的是空白框线

15.在wordcloud生成词云时,有一个控制分辨率的参数scale,数值越大分辨率越高(默认值很低),3就完全够用了

 

//20200403update

如有新的内容再来更新

================================================

posted @ 2020-03-28 13:13  醉生梦死_0423  阅读(724)  评论(0编辑  收藏  举报