python制作软件界面,python图形化界面设计
什么是wxFormBuilder?wxFormBuilder是一款可视化的gui设计工具,可以在界面设计后自动生成代码,免去繁琐的手工代码GUI。一套接口可以支持C \Python\PHP\Lua\XRC等代码形式的生成,可以大大提高python GUI的开发效率。
项目发布URL:
https://github.com/wxFormBuilder/wxFormBuilder/releases
wxFormBuilder的工具界面主要分为四个区域:项目区、控件区、编辑区和属性区。虽然工具没有提供详细的文档,但是如果你有开发C#桌面应用的经验,你会发现它和vs studio有些类似,你可以很快上手。界面设计的基本操作步骤如下:在【控件区】选中控件,控件会实时显示在【编辑区】,然后在【属性区】编辑控件属性。整个界面布局会以树状的层次结构显示在【项目区】中,拖动项目区中的控件可以改变其位置。
三界面布局一个GUI的基本框架包括:Frame、Sizer、menubar、statusBar,控件之间有层次关系。
框架:
整个界面的基础框架直接决定了GUI界面的大小,其他控件只能在框架(对应窗体)的基础上添加;在控制区域中);
分级器:
确定每个控件的布局和相对位置。所有的基本控件都要放在sizer中,sizer支持嵌套,这也是和vs界面设计器不同的地方。它不能支持控件的自由拖动,略显不够灵活。但是,复杂的界面设计(对应于控制区域的布局)也可以通过sizer嵌套来实现。
控件:
有了上面两层,就真的可以添加控件了,提供丰富的支持wxpython的控件,对应Common,Containers,Menu/Toolbar等。在控制区;
3.1分级机布局装置
sizer布局有七种类型:wxBoxSizer、wxWrapSizer、wxStaticBoxSizer、wxGridSizer、wxFlexGridSizer、wxGridBagSizer、wxStdDialogButtonSizer。Sizer确定添加到内部的每个控件的相对位置。如图wxBoxSizer是一个自上而下的布局设备,在frame中添加一个wxBoxSizer,然后在Sizer中添加三个按钮,这样三个按钮自动从上到下排列。
3.2控制属性
每个控件都可以独立设置自己的属性,也有自己独特的属性。这里总结了影响控件性能的五个重要属性:样式、标志、大小、比例和方向。
样式:控件样式,不同的控件有不同的样式属性值,被勾选后可以实时显示在设计器上;
Flag:可以设置控件的边框、对齐和扩展;
Size:设置控件大小;
比例:是否自动拉伸,默认为0;
Orient:控件对齐,wxVertical(垂直对齐),wxHorizontal(水平对齐);
3.3应对事件
有些控件需要触发事件响应,如按钮控件。当您单击按钮并需要触发任务时,您需要将事件绑定到控件。设计界面时,只需要在属性区的事件页面上配置事件对应的函数名即可。比如按钮点击事件是OnButtonClick,具体的功能实现可以放在业务模块里重写事件函数。
3.4生成代码
界面设计完成后,选择文件-生成代码或者F8生成代码,或者直接切换到相应的代码页签复制代码,保存为py文件。
四。使用自动生成的界面代码引用界面设计器生成的布局代码的基本方法如下:
导入wx
#导入布局生成的接口代码,比如类名为BaseFrame,模块名为base_frame。
从基础框架导入基础框架
mainWin类(BaseFrame):
继承基本框架接口布局
def __init__(self,parent):
基础框架。__init__(自身,父代)
#初始化数据
及格
def handle_event(自身,事件):
#覆盖事件处理函数
及格
if __name__==__main__ :
app=wx。应用程序()
main_win=mainWin(无)
主_赢。显示()
app。主循环()
转载自:
https://mp.weixin.qq.com/s?_ _ biz=mjm 5 MTK xmtq 4 NW==mid=2449052654 idx=1sn=c 428 f 6 db 3582620 AC 2 bef 2 b 14 f 0 f 5247 chksm=B2 a 368 be 85d 4 E1 a 803 C2 ad 8 cf 8 f 88630 F8 c 5143893416 ca 466456d 34 beba 1 EFA CB 628 b 08
看完本文有收获?请转发分享给更多人
关注 【小蟒社区】,一起学Python
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。