python 进行窗口视窗设计的模块。简单的构造,多平台,多系统的兼容性, 能让它成为让你快速入门定制窗口文件的好助手。它在 python 窗口视窗模块中是一款简单型的。所以用来入门,熟悉窗口视窗的使用,非常有必要。首先建立一个用来描述的标签tkLabel(注意对象的首字母一般是大写),示例代码如下所示:
复制代码
l = tkLabel(window,
text='OMG! this is TK!', # 标签的文字
bg='green', # 背景颜色
font=('Arial', 12), # 字体和字体大小
width=15, height=2) # 标签长宽
lpack() # 固定窗口位置
复制代码运行结果如我们也可以通过变量的形式控制标签的显示,这时我们引入按钮 tkButton 的概念,每点一次按钮,标签变化一次。 用以下内容替换上面的标签 并把需要变化的文字存成变量 用以绘制二维图形的 Python 模块。它利用了 Python 下的数值计算模块 Numeric及 Numarray,克隆了许多 Matlab 中的函数, 用以帮助用户轻松地获得高质量的二维图形。Matplotlib 可以绘制多种形式的图形包括普通的线图,直方图,饼图,散点图以及误差线图等;可以比较方便的定制图形的各种属性比如图线的类型,颜色,粗细,字体的大小等;它能够很好地支持一部分 TeX 排版命令,可以比较美观地显示图形中的数学公式。Matplotlib 掌握起来也很容易,由于 Matplotlib使用的大部分函数都与 Matlab 中对应的函数同名,且各种参数的含义,使用方法也一致,这就使得熟悉 Matlab 的用户使用起来感到得心应手。对那些不熟悉的 Matlab 的用户而言,这些函数的意义往往也是一目了然的,因此只要花很少的时间就可以掌握。
不知道你解决了没,最近正好研究python。
hwnd=win32guiFindWindow()这个获取窗体句柄,大概都会用;
ctrl=win32guiFindWindowEx(hwnd,None,'窗口类名',‘标题文本’)已知控件类名或控件名时获取控件句柄,这个标题文本不一定存在,所以使用None默认值获取的是该窗口类名中第一个顺位的控件句柄。
你使用b=win32guiGetDlgItem(edit,资源ID)最终结果是获取的是句柄,这里的资源ID其实是spy++中的窗口ID,句柄是可变的,窗口ID是不可变的。这里似乎错了,你这样子大概获取的是控件中的子项(控件有子项的话,比如Combox中的edit框),我猜的,没试过。b=win32guiGetDlgItem(hwnd,窗口ID)是已知ID下获取某控件句柄
如果你想获取某个控件的ID则ctrlid=win32guiGetDlgCtrlID(ctrl)这是一只某控件句柄的情况下获取该控件在应用程序中的窗口ID。
如果不知控件句柄的情况下大概可以试试spy++获取窗口ID,把窗口ID(这个是16进制的)转化成10进制带进b=win32guiGetDlgItem(hwnd,窗口ID)大概也可以得到控件句柄。
其实就是三个函数之间的转化
ctrl=win32guiFindWindowEx(hwnd,None,'edit',None)控件句柄
ctrlid=win32guiGetDlgCtrlID(ctrl)控件的窗口id
ctrl2=win32guiGetDlgItem(hwnd,ctrlid)控件句柄
print "%x" %ctrllist
print "%x" %ctrlid
print "%x" %ctrl
输出,看一下数据与spy++是否一致。然后ctrl=ctrl2
1、你画建筑的话建议你使用天正建筑,天正建筑的选项中有专门对墙体及立柱填充色块的选项,也就是你用天正建筑的相关菜单画出你需要的柱子,自动就填充上了。
2、如果实在不想装天正建筑,那么你自己画一个方块后,键盘输入H 空格
d出填充窗口后在样例的图例中选择SOLTD的填充样式,然后点击添加选择对象,选择你那个立柱方块,空格确认,再确定即可。
至于填充颜色,你在填充完毕后选择上你的填充图案,直接在顶部的颜色栏修改颜色即可,这个颜色菜单栏默认的是白色,你可能得稍微找找,就在图层菜单的边上就是颜色的下拉菜单
具体如下:
1、启动软件新建一个项目,然后在这个项目中来创建一个序列。
2、鼠标单击选中钢笔工具并长按打开工具组,在钢笔工具组中找到并选择“椭圆工具”。
3、选择椭圆工具之后,按住shift+alt键来拖动鼠标左键绘制出一个大小合适的正圆出来。
4、鼠标单击选中绘制的正圆,打开效果控件,找到形状设置,将填充勾选去掉并勾选描边,设置描边的数值到合适大小。
5、经过上一步一个圆环的图形就出现了,下面我们来更改颜色,单击描边的色块,d出拾色器窗口,选择一个颜色。
6、在拾色器窗口中选择一个颜色单击确定之后,就可以看到圆环的颜色就被更改了。
下边这一系列方法用于与窗口管理器进行交互。他们可以被 Tk(根窗口)进行调用,同样也适用于 Toplevel(顶级窗口)。
注:并非所有 *** 作系统均完全支持下方所有方法的实现。
aspect(minNumer=None, minDenom=None, maxNumer=None, maxDenom=None)
-- 控制该窗口的宽高比(width:height)
-- 宽高比限制在:minNumer / minDenom ~ maxNumer / maxDenom
-- 如果忽略参数,则返回一个 4 元组表示当前的限制(如果有的话)
attributes(args)
-- 设置和获取窗口属性
-- 如果你只给出选项名,将返回当前窗口该选项的值
-- 注意:以下选项不支持关键字参数,你需要在选项前添加横杠(-)并用字符串的方式表示,用逗号(,)隔开选项和值。
-- 例如你希望设置窗口的透明度为 50%,你应该使用 attribute("-alpha", 05) 代替 attribute(alpha=05)
-- 下方表格列举了 args 可以使用各个选项的具体含义及用法:
选项 含义
alpha 1(Windows,Mac)控制窗口的透明度
colormapwindows(wlist)
-- 设置和获取 WM_COLORMAP_WINDOWS 属性
-- 该属性仅支持 X 窗口系统的窗口管理器,其他系统均忽略
command(value=None)
-- 设置和获取 WM_COMMAND 属性
-- 该属性仅支持 X 窗口系统的窗口管理器,其他系统均忽略
deiconify()
-- 显示窗口
-- 默认情况下新创建的窗口都会显示在屏幕上,但使用 iconify() 或 withdraw() 方法可以在屏幕上移除窗口
focusmodel(model=None)
-- 设置和获取焦点模式
frame()
-- 返回一个字符串表示当前系统特征
-- 对于类 Unix 系统,返回值是 X 窗口标识符
-- 对于 Windows 系统,返回值是 HWND 强制转换为长整形的结果
geometry(geometry=None)
-- 设置和获取窗口的尺寸
-- geometry 参数的格式为:"%dx%d%+d%+d" % (width, height, xoffset, yoffset)
grid(baseWidth=None, baseHeight=None, widthInc=None, heightInc=None)
-- 通知窗口管理器该窗口将以网格的形式重新调整尺寸
-- baseWidth 和 baseHeight 指定 Tk_GeometryRequest 要求的网格单元数
-- widthInc 和 heightInc 指定网格单元的宽度和高度(像素)
group(window=None)
-- 将窗口添加到窗口群中
-- window 参数指定控制窗口群的主窗口
-- 如果忽略该参数,将返回当前窗口群的主窗口
iconbitmap(bitmap=None, default=None)
-- 设置和获取窗口的图标
-- 例如 rooticonbitmap(bitmap="Pythonico")
-- default 参数可以用于指定由该窗口创建的子窗口的默认图标
iconify()
-- 将窗口图标化(最小化)
-- 需要重新显示窗口,使用 deiconify() 方法
-- 该方法会使得 state() 返回 "iconic"
iconmask(bitmap=None)
-- 设置和获取位图掩码
iconname(newName=None)
-- 设置和获取当窗口图标化(最小化)时的图标名字
iconposition(x=None, y=None)
-- 设置和获取当窗口图标化(最小化)时的图标位置
iconwindow(pathName=None)
-- 设置和获取当窗口图标化(最小化)时的组件窗口
-- 该方法会使得 state() 返回 "icon"
maxsize(width=None, height=None)
-- 设置和获取该窗口的最大尺寸
minsize(width=None, height=None)
-- 设置和获取该窗口的最小尺寸
overrideredirect(boolean=None)
-- 如果参数为 True,该窗口忽略所有的小部件(也就是说该窗口将没有传统的标题栏、边框等部件)
positionfrom(who=None)
-- 指定窗口位置由“谁”决定
-- 如果 who 参数是 "user",窗口位置由用户决定
-- 如果 who 参数是 "program",窗口位置由系统决定
protocol(name=None, func=None)
-- 将回调函数 func 与相应的规则 name 绑定
-- name 参数可以是 "WM_DELETE_WINDOW":窗口被关闭的时候
-- name 参数可以是 "WM_SAVE_YOURSELF":窗口被保存的时候
-- name 参数可以是 "WM_TAKE_FOCUS":窗口获得焦点的时候
resizable(width=None, height=None)
-- 指定是否可以改变该窗口的尺寸
-- width 为 True 说明允许调整窗口的水平尺寸
-- height 为 True 说明允许调整窗口的垂直尺寸
sizefrom(who=None)
-- 指定窗口尺寸由“谁”决定
-- 如果 who 参数是 "user",窗口位置由用户决定
-- 如果 who 参数是 "program",窗口位置由系统决定
state(newstate=None)
-- 设置和获得当前窗口的状态
-- newstate 的值可以是 "normal","iconic"(见 iconify),"withdrawn"(见 withdraw),"icon"(见 iconwindow)和 "zoomed"(放大,Windows 特有)
title(string=None)
-- 设置窗口的标题
transient(master=None)
-- 指定为 master 的临时窗口
withdraw()
-- 将窗口从屏幕上移除(并没有销毁)
-- 需要重新显示窗口,使用 deiconify() 方法
-- 该方法会使得 state() 返回 "withdrawn"
wm_aspect(minNumer=None, minDenom=None, maxNumer=None, maxDenom=None)
-- 见上方 aspect()
wm_attributes(args)
-- 见上方 attributes()
wm_client(name=None)
-- 见上方 client()
wm_colormapwindows(wlist)
-- 见上方 colormapwindows()
wm_command(value=None)
-- 见上方 command()
wm_deiconify()
-- 见上方 deiconify()
wm_focusmodel(model=None)
-- 见上方 focusmodel()
wm_frame()
-- 见上方 frame()
wm_geometry(geometry=None)
-- 见上方 geometry()
wm_grid(baseWidth=None, baseHeight=None, widthInc=None, heightInc=None)
-- 见上方 grid()
wm_group(window=None)
-- 见上方 group()
wm_iconbitmap(bitmap=None, default=None)
-- 见上方 iconbitmap()
wm_iconify()
-- 见上方 iconify()
wm_iconmask(bitmap=None)
-- 见上方 iconmask()
wm_iconname(newName=None)
-- 见上方 iconname()
wm_iconposition(x=None, y=None)
-- 见上方 iconposition()
wm_iconwindow(pathName=None)
-- 见上方 iconwindow()
wm_maxsize(width=None, height=None)
-- 见上方 maxsize()
wm_minsize(width=None, height=None)
-- 见上方 minsize()
wm_overrideredirect(boolean=None)
-- 见上方 overrideredirect()
wm_positionfrom(who=None)
-- 见上方 positionfrom()
wm_protocol(name=None, func=None)
-- 见上方 protocol()
wm_resizable(width=None, height=None)
-- 见上方 resizable()
wm_sizefrom(who=None)
-- 见上方 sizefrom()
wm_state(newstate=None)
-- 见上方 state()
wm_title(string=None)
-- 见上方 title()
wm_transient(master=None)
-- 见上方 transient()
wm_withdraw()
-- 见上方 withdraw()
你好,
1、读取windows窗口,应该要用系统编程的知识实现接口,然后python调用
python 没有直接能实现该功能的模块
2、或者,你需要调用win32 api了已经不是python的标准范围
你可以看看 Pywin32 这个扩展库
上一节我们介绍了登录窗体的GUI设计与功能实现,用户的账号和密码校验完成后应当跳转到主窗体内容,这一节我们将具体介绍主窗体界面的设计与功能实现!
我们新建一个900x640的窗口,顶部加入,下面主体部分创建两个Panedwindow容器,左边添加按钮,右边作为TreeView显示界面;
显示效果:(注意:tkinter在Mac上Panedwindow不支持修改前景色背景色)
在右边的Pannedwindow容器中,添加一个LabelFrame容器作为查询区域,在LabelFrame容器中添加一系列的Label、Entry、Button控件,可以输入学号、姓名、电话、身份z、查询、和显示全部信息:
显示效果:
创建控件、设置对齐方式和每个列的标题
显示效果:
登录成功后,在顶部显示用户姓名和登录时间,用户姓名是怎么来的?是我们在登录窗口输入的,所以这就涉及到了跨窗体数据的传递。这一点非常重要!
登录窗体(登录信息)==>主窗体
传递的基本方式:构造函数
在主窗体的构造函数中添加一个接收参数 current_user ,在登录窗体加载新窗体时将参数传递进去;
但是我们登录窗体的登录函数 login() 中用户名的变量 user 是局部变量,函数调用完了之后就变量就没有了,那怎么调用呢?
我们需要在登录窗体的构造函数中定义全局变量:
为了获取用户登录的时间,我们定义一个获取当前时间的方法:
然后在加载主窗体时将参数 selfuser 和 selfget_now_time() 作为参数传递进去
另一边,我们在主窗体中,在构造函数中添加全局变量
之后,我们在Top_banner中通过标签将user信息展示出来:
这样主窗口就会显示通过登录窗口登录的用户名(首字母自动转大写)和登录时间:
效果演示:
然后我们在构造方法中把这个函数写入,以实现自动把学生信息写入到all_student_list中
文件中读取到的学生信息存储到all_student_list列表,以此作为参数传入加载TreeView的方法中;
在构造方法中调用该方法,自动把所有学生信息加载到TreeView中
运行效果:
这一节我们实现了主窗体的搭建,从界面的布局到TreeView加载全部学生信息。学生数据如此之多,如果我们想精确查看具体某个学生的信息该怎么做呢?下一讲,我们将实现学生信息的查询功能,敬请期待吧~
以上就是关于python屏幕show命令显示大字符全部的内容,包括:python屏幕show命令显示大字符、python pywin32 里面 *** 作窗体,获取窗体里面的数据,在函数GetDlgItem函数中,怎么获取第二个参数的值、python 绘图scatter里面颜色参数是怎么回事等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)