为什么要做简单的界面呢
色彩
透视,通感
鲜明对比
线条:动静--冷暖-酸甜-香臭
点:点缀(目的丰富画面,活跃气氛)
线:联系(具有引导性,贯穿画面)
面:重点(主要信息呈现,有分量感)
菱形四边形元素--动感,活跃
位置--空间
综上属性--大小颜色样式
背景
轮廓--填充--效果
PC端
界面元素和界面布局
界面元素
00.屏幕上显示内容首先要创建一个窗口承载内容
01.
窗口--线条
bar栏--标题栏,状态栏、导航栏
条--滚动条、工具条,进度条
field框--对话框,边框,滑动框,消息框
复合控件
下拉选项
布局:
单列布局还是双列布局
环环相扣还是直白排版
选择题还是填空题
是否需要快捷键
事件-鼠标-键盘-触摸屏等响应
移动端
移动端的
button 按钮--移动按钮
栏--下拉菜单,平铺菜单栏
框--单选框,复选框,文本框,文件选择框
页签
GUI 提供给用户一种更加直白的图形化的人机交互界面。
图形界面编程
桌面程序编程
网络程序编程--HTML+CSS
GUI库--图形用户接口--是指采用图形方式显示的计算机操作用户界面,(GUI Libraries)
Qt是一个跨平台C++图形用户界面应用程序开发框架--Qt toolkit
GTK+(GIMP Toolkit)是一套源码以LGPL许可协议分发、跨平台的图形工具包--GIMP Toolkit(GTK+ C的开源GUI库
wxWidgets是一个开源的跨平台的C++构架库(framework),它可以提供GUI(图形用户界面)和其它工具
MFC(Microsoft Foundation Classes,微软基础类库)--MFC界面库,C/C++混合-事件驱动架构--构建于Windows API 之上
FOX是一个C++开发图形用户界面库,方便和有效的基础工具包--开源的
VCF---Visual Component Framework的框架
Tkinter: Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接--Python原生--Tcl 是“工具控制语言(Tool Command Language)
界面处理机制
MESSAGE MAP机制---消息响应机制--消息映射和消息处理
event handler机制--------事件处理器机制--基于监听的事件处理机制
Python语言的桌面程序开发
开发小工具用的界面-不要求很复杂,上手简单就行-Tkinter,就选它了,其余的介绍如下
PyQt:PyQt是一个创建GUI应用程序的工具包。它是Python编程语言和Qt库的成功融合
PyGtk
wxPython是Python语言的一套优秀的GUI图形库,GUI库wxWidgets的Python封装和Python模块的方式
Java和Scala
JAVA的GUI框架----AWT , SWT, Swing
Scala的GUI矿建--scala.swing库--
Scala界面事件处理采用
过程:发布--订阅的方式 来处理事件,发布者发布事件,订阅者向发布者订阅
发布者称作 事件源,
订阅者称作 事件监听器,订阅方法 listenTo() 取消订阅deafTo()
事件
步骤:
第一步: 注册监听的对象
第二步:对监听到的事件进行处理
组件--可以是发布者 也可以是订阅者
Ubuntu桌面系统--图形桌面环境
GNOME
KDE
Unity
Xfce
Cinnamon
Tkinter架构
UI的结构底层的容器窗体:root window,在root上面就会有一些容器的UI,在UI的上面又会有一些其他的UI
分类:
widget(显示)
WM(管理:窗体的显示,添加,例如pack()),
event(事件传导机制):输入事件,状态事件(鼠标的挪进挪出),管理事件(窗体的生命周期的消亡)
在python2中叫Tkinter,在python3中叫tkinter 。
界面开发步骤
1.导入模块与创建控件
2.创建一个顶层窗口,或者叫根窗口--Tk将被用于创建一个根窗口(root window)
3.创建部件(widgets)
4.管理和显示部件
5.mainloop()-进入窗体的主循环
Python文件选择
浏览按钮获取文件全路径
tkMessageBox模块用于显示在您的应用程序的消息框
python中导入tkmessageBox需要这样导入 import tkinter.messagebox
Python中的使用
组件
1.Label:
说明:标签
用法:Label(根对象,[属性列表(用字典的形式)])
例子:name=Label(root,name='name',bg='green')
2.Button:
说明:按钮
3.Frame
说明:创建矩形区域,作为容器
部件函数的调用有两种方式:直接绑定和间接绑定。
直接绑定就是在元件 Button 中的参数 command 中设定回调的函数名称,如下:
ButtonInput=Tkinter.Button(root,text="Input",command=InputString)
间接绑定是用 bind 方法,对于所有元件都有这个方法,-bind()函数进行事件的绑定形式如下:
ButtonInput.bind('<Return>',InputString)
布局
三.布局
显示元件的方法不仅仅有 pack(),还有 grid()
参考:
丑陋的Tkinter---想说爱你不容易 http://blog.chinaunix.net/uid-22334392-id-3604020.html
http://www.tkdocs.com/tutorial/index.html
An Introduction To Tkinter http://effbot.org/tkinterbook/tkinter-index.htm#class-reference
Python 下用 Tkinter 制作 GUI http://pikipity.github.io/blog/python-tkinter.html