Checkbutton控件

Checkbutton控件用来创建复选框。下列是Checkbutton控件的属性。
(1)onvalue,offvalue:设置Checkbutton控件的variable属性所指定的变量 所要存储的数值。如果复选框没有被勾选,此变量的值为offvalue。否则此变量的值为onvalue。
(2)indicatoron:将此属性设置为0,可以将整个控件变成复选框。
下列是Checkbutton控件的方法。
(1)select():选择复选框,并且设置变量的值为onvalue。

import tkinter
import tkinter.messagebox
from tkinter import Button
from tkinter import Frame
from tkinter import Label
from tkinter import Canvas
from tkinter import PhotoImage
from tkinter import Checkbutton#创建主窗口
win=tkinter.Tk()check1=Checkbutton(win,text="吴")
check2=Checkbutton(win,text="宇")
check3=Checkbutton(win,text="翔")
check1.select()
check1.pack(side=tkinter.LEFT)
check2.pack(side=tkinter.LEFT)
check3.pack(side=tkinter.LEFT)#开始窗口的事件循环
win.mainloop()

Entry控件与Label控件

  • Entry控件用来在窗体或者从窗口内创建一个单行的文本框。
    下列是Entry控件的属性。
    textvariable:此属性为用户输入的文字或者要显示在Entry控件内的文字。
    下列是Entry控件的方法。
    get():此方法可以读取Entry widget内的文字。
  • Lable控件用来创建一个显示方块,可以在这个显示方块里面放置文字或者图片。当用户在Entry控件内输入数值时,其值会存储在tkinter的StringVar类内。可以将Entry控件的textvariable属性设置成StringVar类的实例变量,让用户输入的数值自动显示在Entry控件上。
expression==StringVar()
entry=Entry(frame,textvariable=expression)
entry.pack()
  • 此方法也适用于在Lable控件上。可以使用StringVar类的set()方法,直接写入Label控件要显示的文字。例如:
expression=StringVar()
Label(frame,textvariable=expression)
expression.set("hello")
import tkinter
import tkinter.messagebox
from tkinter import Button
from tkinter import Frame
from tkinter import Label
from tkinter import Canvas
from tkinter import PhotoImage
from tkinter import Checkbutton
from tkinter import StringVar
from tkinter import Entry#创建主窗口
win=tkinter.Tk()#创建窗体
frame=Frame(win)#创建一个计算公式
def calc():#将用户输入的表达式,计算结果后转换成字符串result="="+str(eval(expression.get()))#将计算的结果显示在Lable widght上label.config(text=result)#清除文本框与文字标签的内容
def clear():expression.set("")label.config(text="")#创建一个Lable控件
label=Label(frame)
#读取用户输入的表达式
expression=StringVar()
#创建一个Entry控件Entry控件位于窗体上方
entry=Entry(frame,textvariable=expression)
entry.pack()#创建一个Button控件,当用户输入完毕后,单击此按钮即计算表达式的结果
button1=Button(frame,text="等于",command=calc)
button2=Button(frame,text="清除",command=clear)#设置Entry控件为焦点所在
entry.focus()
frame.pack()
#Lable控件位于窗体的左方
label.pack(side=tkinter.LEFT)
#Button控件位于窗体的右方
button1.pack(side=tkinter.RIGHT)
button2.pack(side=tkinter.RIGHT)#开始窗口的事件循环
frame.mainloop()

Listbox控件

  • Listbox控件用来创建一个列表框。列表框内可以包含很多选项,用户可以只选择一项或者选择多项。
    *下列是Listbox的属性。
    (1)height:列表框的行数目。如果此属性为0,则自动设置成能找到的最大选项数目。
    (2)selectmode:设置列表框的种类,可以是SINGLE,EXTENDED,MULTIPLE或者BROWSE。
    (3)width:设置每一行的字符数目。如果此属性为0,则自动设置成能找到的最大字符数目。
    *下列是Listbox控件的使用方法。
    (1)delete(row[,lastrow]):删除指定行row,或者删除row到lastrow之间的行。
    (2)get(row):取得指定行row内的字符串。
    (3)insert(row,string):在指定行row插入字符串string。
    (4)see(row):将指定行row变为可视。
    (5)select_clear():清除选择项。
    (6)select_set(startrow,endrow):选择startrow与endrow之间的行。
import tkinter
import tkinter.messagebox
from tkinter import Button
from tkinter import Frame
from tkinter import Label
from tkinter import Canvas
from tkinter import PhotoImage
from tkinter import Checkbutton
from tkinter import StringVar
from tkinter import Entry
from tkinter import Listbox#创建主窗口
win=tkinter.Tk()#创建窗体
frame=Frame(win)#创建列表框选项列表
name=["香蕉","苹果","橘子","西瓜","桃子","菠萝","柚子","橙子"]#创建Listbox控件
listbox=Listbox(frame)
#清除Listbox控件的内容
listbox.delete(0,tkinter.END)
#在Listbbox控件内插入选项
for i in range(8):listbox.insert(tkinter.END,name[i])listbox.pack()
frame.pack()#开始窗口的事件循环
frame.mainloop()

Menu控件

Menu控件用来创建三种类型的菜单:pop-up(快捷式菜单),toplevel(主目录),pull-down(下拉式菜单)。下列是Menu控件的使用方法。
(1)add_command(options):新建一个菜单项。
(2)add_radiobutton(options):新建一个选择钮菜单项。
(3)add_checkbutton(options):创建一个复选框菜单项
(4)add_cascade(options):将一个指定的菜单与其父菜单联结,创建一个新的级联菜单。
(5)add_separator():新建一个分隔符
(6)add(type,options):新增一个特殊类型的菜单项。
(7)delete(startindex[,endindex]):删除startindex到endindex之间的菜单项
(8)entryconfig(index,options):修改index的菜单项
(9)index(item):返回index索引值的菜单项标签
下列是Menu控件方法的选项。
(1)accelerator:设置菜单项的快捷键,快捷键会显示在菜单项的右边。注意此选项并不会自动将快捷键与菜单项联结在一起,必须另行设置。
(2)command:当选择菜单项时执行的callback函数。
(3)indicatorOn:设置此属性,可以让菜单项选择on或者off。
(4)label:定义菜单项内的文字。
(5)menu:此属性与add_cascade()方法一起使用,用来新增菜单项的子菜单项。
(6)selectColor:菜单项on或者off的颜色。
(7)state:定义菜单项的状态,可以是normal,active,或者disabled。
(8)onvalue,offvalue:存储在variable属性内的数值。当选择菜单项时,将onvalue内的数值复制到variable属性内。
(9)tearOff:如果此选项为true,在菜单项的上面显示一个可按的分隔线。按下此分隔线,会将此菜单项分割出来成为一个新的窗口。
(10)underline:设置菜单项中的哪一个字符要有底线。
(11)value:选择钮菜单项的值。
(12)variable:用来存储数值的变量。

import tkinter
import tkinter.messagebox
from tkinter import Button
from tkinter import Frame
from tkinter import Label
from tkinter import Canvas
from tkinter import PhotoImage
from tkinter import Checkbutton
from tkinter import StringVar
from tkinter import Entry
from tkinter import Listbox
from tkinter import Menu#创建主窗口
win=tkinter.Tk()#执行菜单命令,显示一个对话框
def doSomething():tkinter.messagebox.askokcancel("菜单","你正在选择菜单命令")#创建一个主目录(toplevel)
mainmenu=Menu(win)
#新增菜单项
mainmenu.add_command(label="文件",command=doSomething)
mainmenu.add_command(label="编辑",command=doSomething)
mainmenu.add_command(label="视图",command=doSomething)
mainmenu.add_command(label="窗口",command=doSomething)
mainmenu.add_command(label="帮助",command=doSomething)#设置主窗口的菜单
win.config(menu=mainmenu)#开始窗口的事件循环
win.mainloop()

import tkinter
import tkinter.messagebox
from tkinter import Button
from tkinter import Frame
from tkinter import Label
from tkinter import Canvas
from tkinter import PhotoImage
from tkinter import Checkbutton
from tkinter import StringVar
from tkinter import Entry
from tkinter import Listbox
from tkinter import Menu#创建主窗口
win=tkinter.Tk()#执行【文件/新建】命令,显示一个对话框
def doFileNewCommand(*arg):tkinter.messagebox.askokcancel("菜单","你正在选择【新建】命令")#执行【文件/打开】命令,显示一个对话框
def doFileOpenCommand(*arg):tkinter.messagebox.askokcancel("菜单","你正在选择【打开】命令")#执行【文件/保存】命令,显示一个对话框
def doFileSaveCommand(*arg):tkinter.messagebox.askokcancel("菜单","你正在选择【保存】命令")#执行【帮助/文档】命令,显示一个对话框
def doHelpContentsCommand(*arg):tkinter.messagebox.askokcancel("菜单","你正在选择【文档】命令")#执行【帮助/关于】命令,显示一个对话框
def doHelpAboutCommand(*arg):tkinter.messagebox.askokcancel("菜单","你正在选择【关于】命令")#创建一个下拉式菜单(pull-down)
mainmenu=Menu(win)#新增“文件”菜单的子菜单
filemenu=Menu(mainmenu,tearoff=0)
#新增"文件"菜单的菜单项
filemenu.add_command(label="新建",command=doFileNewCommand,accelerator="Ctrl-N")
filemenu.add_command(label="打开",command=doFileNewCommand,accelerator="Ctrl-O")
filemenu.add_command(label="保存",command=doFileNewCommand,accelerator="Ctrl-S")
filemenu.add_separator()
filemenu.add_command(label="退出",command=win.quit)
#新增"文件"菜单
mainmenu.add_cascade(label="文件",menu=filemenu)#新增“帮助”菜单的子菜单
helpmenu=Menu(mainmenu,tearoff=0)
#新增“帮助”菜单的菜单项
helpmenu.add_command(label="文档",command=doHelpContentsCommand,accelerator="F1")
helpmenu.add_command(label="文档",command=doHelpAboutCommand,accelerator="Ctrl_A")
#新增“帮助”菜单
mainmenu.add_cascade(label="帮助",menu=helpmenu)#设置主窗口的菜单
win.config(menu=mainmenu)win.bind("<Control-n>",doFileNewCommand)
win.bind("<Control-N>",doFileNewCommand)
win.bind("<Control-o>",doFileOpenCommand)
win.bind("<Control-O>",doFileOpenCommand)
win.bind("<Control-s>",doFileSaveCommand)
win.bind("<Control-S>",doFileSaveCommand)
win.bind("<F1>",doHelpContentsCommand)
win.bind("<Control-a>",doHelpAboutCommand)
win.bind("<Control-A>",doHelpAboutCommand)#开始窗口的事件循环
win.mainloop()

Message控件

Message控件用来显示多行不可编辑的文字。Message控件会自动分行,并且编排文字的位置。Message控件与Label控件的功能相似,但是Messaga控件多了自动编排的功能。

import tkinter
import tkinter.messagebox
from tkinter import Button
from tkinter import Frame
from tkinter import Label
from tkinter import Canvas
from tkinter import PhotoImage
from tkinter import Checkbutton
from tkinter import StringVar
from tkinter import Entry
from tkinter import Listbox
from tkinter import Menu
from tkinter import Message#创建主窗口
win=tkinter.Tk()txt="一二三四五,上山打老虎,老虎没打到,打到小松鼠。"
msg=Message(win,text=txt)
msg.pack()#开始窗口的事件循环
win.mainloop()

Radiobutton控件

Radiobutton控件用来创建一个单选按钮。为了让一群单选按钮可以执行相同的功能,必须设置这群单选按钮的variable为相同值,value属性值则是各单选按钮的数值。
下列是Radiobutton控件的属性。
(1)command:当用户选中此单选按钮时,所调用的函数。
(2)variable:当用户选中此单选按钮时,要更新的变量。
(3)width:当用户选中此单选按钮时,要存储在变量里面的值。
下列是Radiobutton控件的方法。
(1)flash():将前景与背景颜色互换来产生闪烁的效果。
(2)invoke():执行command属性所定义的函数
(3)select():选中此单元按钮,将variable变量的值设置成value属性值。

import tkinter
import tkinter.messagebox
from tkinter import Button
from tkinter import Frame
from tkinter import Label
from tkinter import Canvas
from tkinter import PhotoImage
from tkinter import Checkbutton
from tkinter import StringVar
from tkinter import Entry
from tkinter import Listbox
from tkinter import Menu
from tkinter import Message
from tkinter import IntVar
from tkinter import Radiobutton#创建主窗口
win=tkinter.Tk()#运动项目列表
sports=["棒球","篮球","足球","网球","排球"]#将用户的选择显示在Label控件上
def showSelection():choice="你的选择是:"+sports[var.get()]label.config(text=choice)#读取用户的选择值,是一个整数
var=IntVar()#创建单选按钮,靠右边对齐
Radiobutton(win,text=sports[0],variable=var,value=0,command=showSelection).pack(anchor=tkinter.W)
Radiobutton(win,text=sports[1],variable=var,value=1,command=showSelection).pack(anchor=tkinter.W)
Radiobutton(win,text=sports[2],variable=var,value=2,command=showSelection).pack(anchor=tkinter.W)
Radiobutton(win,text=sports[3],variable=var,value=3,command=showSelection).pack(anchor=tkinter.W)
Radiobutton(win,text=sports[4],variable=var,value=4,command=showSelection).pack(anchor=tkinter.W)#创建文字标签,用来显示用户的选择
label=Label(win)
label.pack()#开始窗口的事件循环
win.mainloop()

import tkinter
import tkinter.messagebox
from tkinter import Button
from tkinter import Frame
from tkinter import Label
from tkinter import Canvas
from tkinter import PhotoImage
from tkinter import Checkbutton
from tkinter import StringVar
from tkinter import Entry
from tkinter import Listbox
from tkinter import Menu
from tkinter import Message
from tkinter import IntVar
from tkinter import Radiobutton
from tkinter import *#创建主窗口
win=tkinter.Tk()#运动项目列表
sports=["棒球","篮球","足球","网球","排球"]#将用户的选择显示在Label控件上
def showSelection():choice="你的选择是:"+sports[var.get()]label.config(text=choice)#读取用户的选择值,是一个整数
var=IntVar()#创建单选按钮,靠左边对齐
radio1=Radiobutton(win,text=sports[0],variable=var,value=0,command=showSelection)
radio2=Radiobutton(win,text=sports[1],variable=var,value=1,command=showSelection)
radio3=Radiobutton(win,text=sports[2],variable=var,value=2,command=showSelection)
radio4=Radiobutton(win,text=sports[3],variable=var,value=3,command=showSelection)
radio5=Radiobutton(win,text=sports[4],variable=var,value=4,command=showSelection)#将单选按钮的外形设置成命令型按钮
radio1.config(indicatoron=0)
radio2.config(indicatoron=0)
radio3.config(indicatoron=0)
radio4.config(indicatoron=0)
radio5.config(indicatoron=0)radio1.pack(anchor=tkinter.W)
radio2.pack(anchor=tkinter.W)
radio3.pack(anchor=tkinter.W)
radio4.pack(anchor=tkinter.W)
radio5.pack(anchor=tkinter.W)#创建文字标签,用来显示用户的选择
label=Label(win)
label.pack()#开始窗口的事件循环
win.mainloop()

Scale控件

Scale用来创建一个标尺式的滑动条对象,让你可以移动标尺上的光标来设置数值。下列是Scale控件的使用方法。
(1)get():取得目前标尺上的光标值。
(2)set(value):设置目前标尺上的光标值。

from tkinter import *
from string import *#创建主窗口
win=Tk()#将标尺上的0-100范围内的数字,转换成0-255范围内的十六进位数字
#再转化成2个字符的字符串,如果数字只有一位,就在前面加一个零
def getRGBStr(value):#将标尺上的0-100范围内的数字转换成0-255范围内的十六进制数字,再转换成字符串ret=str(hex(int(value/100*255)))#将十六进制数字前面的0x去掉ret=ret[2:4]#转换成2个字符的字符串,假如数字只有一位就在前面加一个0ret=ret.zfill(2)return ret#将RGB颜色的字符串,转换成#rrggbb类型的字符串
def showRGBColor():#读取#rrggbb字符串的rr部分strR=getRGBStr(var1.get())#读取#rrggbb字符串的gg部分strG=getRGBStr(var2.get())#读取#rrggbb字符串的bb部分strB=getRGBStr(var3.get())#转换成#rrggbb类型的字符串color="#"+strR+strG+strB#将颜色字符串,设置给Label控件的背景颜色colorBar.config(background=color)#分别读取三个标尺的值,是一个双精度浮点数
var1=DoubleVar()
var2=DoubleVar()
var3=DoubleVar()#创建标尺
scale1=Scale(win,variable=var1)
scale2=Scale(win,variable=var2)
scale3=Scale(win,variable=var3)#将按钮靠左对齐
scale1.pack(side=LEFT)
scale2.pack(side=LEFT)
scale3.pack(side=LEFT)#创建一个标签,用来显示颜色字符串
colorBar=Label(win,text=" "*40,background="#000000")
colorBar.pack(side=TOP)#创建一个标签,按下后立即将标尺上的RGB值显示在Label控件上
button=Button(win,text="查看颜色",command=showRGBColor)
button.pack(side=BOTTOM)#开始程序循环
win.mainloop()

Scrollbar控件

Scrollbar控件用来创建一个水平或者垂直的滚动条,可与Listbox,Text,Canvas等控件共同使用来移动显示的范围。下列是Scrollbar控件的方法。
(1)set(first,last):设置目前的显示范围,其值在0-1之间。
(2)get():返回目前滚动条设置值。

from tkinter import *
from string import *#创建主窗口
win=Tk()#创建一个水平滚动条
scrollbar1=Scrollbar (win,orient=HORIZONTAL )
#水平滚动条位于窗口底端,当窗口改变大小时会横向填满窗口
scrollbar1.pack(side=BOTTOM,fill=X)#创建一个竖直滚动条
scrollbar2=Scrollbar (win)
#水平滚动条位于窗口右端,当窗口改变大小时会纵向填满窗口
scrollbar2.pack(side=RIGHT,fill=Y)#创建一个列表框,x方向的滚动条指令是scrollbar1对象的set()方法,y方向的滚动条指令是scrollbar2对象的set()方法
mylist=Listbox(win,xscrollcommand=scrollbar1.set,yscrollcommand=scrollbar2.set)
#在列表框内插入60个选项
for i in range(60):mylist.insert(END,"一二三四五,上山打老虎,老虎没打到,打到小松鼠。"+str(i))
#列表位于窗口左端,当窗口改变大小时会在X与Y方向填满窗口
mylist.pack(side=LEFT,fill=BOTH)
#移动水平滚动条时,改变列表框的x方向可见范围
scrollbar1.config(command=mylist.xview)
#移动竖直滚动条时,改变列表框的y方向可见范围
scrollbar2.config(command=mylist.yview)#开始程序循环
win.mainloop()

Text控件

Text控件用来创建一个多行,格式化的文本框。用户可以改变文本框内的字体,文字颜色。
下列是Text控件的属性:
(1)state:此属性值可以是normal或者disable。state等于normal表示此文本框可以编辑内容;state等于disabled表示此文本框可以不编辑内容。
(2)tabs:此属性值为一个tab位置的列表。列表中的元素是tab位置的索引值,再加上一个调整字符 :l,r,c。l代表left,r为right,c为center。
下列是Text控件的使用方法:
(1)delete(startindex[,endindex]):删除特定位置的字符,或者这一定范围内的文字。
(2)get(startindex[,endindex]):返回特定位置的字符,或者这一定范围内的文字。
(3)index(index):返回指定索引值的绝对值。
(4)insert(index[,string]…):将字符串插入到指定位置。
(5)see(index):如果指定索引值的文字是可见的就返回True。

from tkinter import *
from string import *#创建主窗口
win=Tk()
win.title(string="文本控件")#创建一个Text控件
text=Text(win)#在Text控件内插入一段文字
text.insert(INSERT,"一二三四五,上山打老虎,老虎没打到,打到小松鼠。:\n\n")#跳到下一行
text.insert(INSERT,"\n\n")#在Text控件内插入一个按钮
button=Button(text,text="关闭",command=win.quit)
text.window_create(END,window=button)text.pack(fill=BOTH)#在第一行文字的第10个字符到第14个字符处插入标签,标签名为“print”
text.tag_add("print","1.10","1.15")
#将插入的按钮标签名设置为“button”
text.tag_add("button",button)#改变标签“print”的前景与背景颜色,并且加底线
text.tag_config("print",background="yellow",foreground="blue",underline=1)
#设置标签“button”的居中排列
text.tag_config("button",justify="center")#开始程序循环
win.mainloop()

Python学习笔记——图形用户界面(2)相关推荐

  1. python打开界面是什么样的-python学习笔记(图形用户界面)

    GUI python提供了多个图形开发界面的库,几个常用Python GUI库如下: Tkinter: Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的 ...

  2. python打开界面-python学习笔记(图形用户界面)

    GUI python提供了多个图形开发界面的库,几个常用Python GUI库如下: Tkinter: Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的 ...

  3. Python学习笔记·交互式图形编程

    Python学习笔记·交互式图形编程 注:在校计算机学生一名,菜鸟一枚,最近开始学习Python的基础知识希望有什么不对的地方各位大佬能够不令赐教! 课程是在中国大学MOOC上学的,有兴趣的同学可以自 ...

  4. Python学习笔记(二)——Python基本图形绘制

    Python学习笔记(二)--Python基本图形绘制 文章目录 Python学习笔记(二)--Python基本图形绘制 不同编程语言的初心和适用对象 Python蟒蛇绘制 五星红旗绘制 这次笔记主要 ...

  5. 北理工嵩天Python学习笔记

    1 Python基本语法元素 1.1 程序设计基本方法 计算机发展历史上最重要的预测法则     摩尔定律:单位面积集成电路上可容纳晶体管数量约2年翻倍 cpu/gpu.内存.硬盘.电子产品价格等都遵 ...

  6. PYTHON学习笔记之(一)2020.08

    PYTHON学习笔记之(一)2020.08 Python基础 数据类型 常见的列表.字典,以及元组.集合. 1 列表 list 1.1 列表转换字符串 stu = ['王一', '李二', '张三'] ...

  7. GUI的演化和python编程——Python学习笔记之二十二

    GUI的演化和python编程--Python学习笔记之二十二 写完了有关长寿的两篇博文,本该去完成哥德尔那个命题六的.对计算机图形界面的好奇,让我把注意力暂时离开那个高度抽象难读的哥德尔,给转到计算 ...

  8. python学习笔记(一)Python 简单介绍

    Python学习笔记(一)Python 简单介绍 Python介绍 Python简介 Python应用领域 Python是解释型的语⾔ 编译和解释的区别是什么? 编译型vs解释型 编译型 解释型 Py ...

  9. 案例驱动式Python学习笔记【第一篇】便捷水果店

    前言 后续的此系列博文用于记录案例式Python学习笔记记录,供本人和感兴趣的小伙伴一起学习!!人生苦短,我学Python! 驱动案例 便捷水果店:请为水果店开发一个收银的小程序,已知水果单价和购买重 ...

最新文章

  1. python控制nao机器人_python控制nao机器人身体动作实例详解
  2. ReactNative生成android平台的bundle文件命令
  3. C运行时库和标准C++库
  4. 在HTML打开已安装的App,未安装跳转到对应的下载链接
  5. 用于RIA的JavaFX 2与HTML5
  6. 如何进入zabbix的wab界面_如何不用光盘重装系统呢?
  7. opencv waitKey() 函数理解及应用
  8. 数据为桥迈向智能,渤海财险数据架构智能化演进
  9. ajax的结果处理,jQuery ajax返回数据的后续处理
  10. L2-002 链表去重(链表+模拟)
  11. 从JavaScript预编译看function的生存时间
  12. Sip 响应状态码 对照 详解
  13. RTX2009管理器服务运行状态空白
  14. 广东联通光猫wo-27s华为HG8321R超级密码
  15. java 卫星轨道6根数实现轨道预测
  16. 维控plc解密 维控程序文件密码 工程密码 子程序密码搞定
  17. 阿里云企业邮箱登陆地址,阿里云个人免费邮箱邮箱登陆地址分享
  18. 【Excel】一、Excel入门指导
  19. Linux的入门学习
  20. UWB定位实验 - 客户端模式(被动式)TDOA定位精度测试

热门文章

  1. 国企计算机职称考试都考什么,计算机软考证书哪个含金量高?长什么样?国企有用吗?可以评职称吗?...
  2. linux发邮件报错,Linux ExtMail登录界面报错
  3. 张家港python培训_张的英文_张翻译_张英语怎么说_海词词典
  4. diffmerge使用
  5. window7,onlyoffice离线安装教程
  6. 火山引擎 RTC 视频性能降级策略解析
  7. gp数据库创建数据库_创建数据库简介
  8. 柯马机器人示教器编程_柯马COMAURacer3协作机器人维修示教器故障
  9. Sublime text3配置切换大小写转换
  10. EZView如何与网络视频录像机语音对讲