这是我新建的一个项目,主页在
http://code.google.com/p/meide<wbr></wbr>/背景:
使用wxPython开发GUI时经常要生成界面,
一种是通过工具生成(但我认为这种重用性并不好)<wbr></wbr>,另一种就是手工写代码。我主要是手工写代码,但是需要你有耐心<wbr></wbr>。以前创建过叫
EasyGuider 的项目,它可以通过字典形式的数据结构快速生成界面<wbr></wbr>,不过存在一些问题:格式固定,不支持事件。于是我从快速辅助手<wbr></wbr>写代码的需求上创建了这个新项目。它适合用来生成简单<wbr></wbr>,有规律的界面。从我个人的开发体会(UliPad)<wbr></wbr>,大量的界面工作并不是很复杂,但是生成组件,布局比较麻烦<wbr></wbr>,因此就想从这里入手,考虑如何快速开发界面。
目标:
方便定义界面
支持事件
支持validate(考虑中)
因此这个项目是从代码级的复用和简化方面来考虑的<wbr></wbr>。目前已经有一些基础代码,有兴趣的可以看一看。不过需要实现的<wbr></wbr>功能还很多。大家有什么好的想法可以交流。
整个框架的设计分为几个层次:
元素
布局
窗体(还未实现)
辅助工具
常见的控件将有对应的类实现。布局目前已经支持HBox, VBox, HGroup, VGroup, Grid, SimpleGrid。布局对象之间可以嵌套。
举一个简单的例子说明使用(可以看tests/test<wbr></wbr>_hbox.py)
import wx
import sys
sys.path.insert(0, '..')
class wxApp(wx.App):
def OnInit(self):
return True
class Frame(wx.Frame):
def __init__(self):
super(Frame, self).__init__(None, -1)
self.init()
def init(self):
import meide
self.box = box = meide.VBox(padding=4)
box.add('', meide.Label('Hello'))
box.add('text', meide.Text('Hello', size=(100, -1)))
meide.create(self, box)
if __name__ == '__main__':
wxApp = wxApp(0)
frame = Frame()
frame.Show()
wxApp.SetTopWindow(frame)
wxApp.MainLoop()
这是一个VBox的示例。VBox在创建时可以设置一个padd<wbr></wbr>ing的参数,它表示这个VBox与周围的空白间距为4个像素。
box.add('', meide.Label('Hello'))
这行是加了一个标签。第一个参数是名字,如果不需要可以为''<wbr></wbr>。不过meide会自动生成一个id_开头的名字,不过一般不用<wbr></wbr>。Label将会使用wx.StaticText控件来生成。也就是说每一个meide的控件将对应一个实际或组合的wxP<wbr></wbr>ython控件。Label至少需要一个字符串参数<wbr></wbr>。其实meide在处理控件时比较特殊,它是按照wxPytho<wbr></wbr>n相应控件的构造参数来组织的,你其实可以根据相应的实际控件填<wbr></wbr>入其它的参数。
box.add('text', meide.Text('Hello', size=(100, -1)))
这行是加入一个文本输入字符,对应于单选输入。第一个参数为它的<wbr></wbr>名字。从这个例子你可以看到它多了一个size的参数<wbr></wbr>。100表示宽度,-1表示不关心。那么meide在处理每个控<wbr></wbr>件时会有一个缺省的缩放因子,对于Text它就是(-1,
0)(从meide.py中可以找到,它是一个类属性叫proportion)。当出现size时<wbr></wbr>,这个缩放因子会与size进行比较,如果缩放因子的x<wbr></wbr>,y的值为-1表示可以缩放,同时相应的size的值也为<wbr></wbr>-1的话,就在相应的方向上进行缩放。如果没有size参数<wbr></wbr>,则按照缩放因子来进行设置。所以很有趣。缩放因子用来控制在哪<wbr></wbr>个方向上可以缩放,而size的定义可以取消某个方面的缩放。
在添加完元素之后,执行:meide.create(self, box),这样元素就画出来了,同时box对应的sizer自动<wbr></wbr>与窗体相关联。
以上只是一个简单的示例,还有许多功能在开发中。
同时要指出,目前meide并不是一个完整的界面解决工具<wbr></wbr>,它侧重于代码的局部。如果你想使用更抽象的mvc的方式<wbr></wbr>,建议研究一下enthought的traits。
分享到:
相关推荐
- 解压到指定目录,例如:`F:\j2meIDE\eclipse`。 - 同样下载NLpack插件包`NLpack-eclipse-SDK-3.0.x-win32.zip`,解压并将其中的`features`和`plugins`两个文件夹的内容直接复制到Eclipse的相应目录下。 2. **...
学习python文档;与基础学习java学习更为先进的解释性编程语言;
SAP ABAP是一种高级业务应用编程接口,是SAP R/3系统中主要的编程语言。以下是对SAP ABAP的一些关键知识点的详细说明: 1. **事件流**:在ABAP程序中,事件流控制着程序的不同阶段,包括初始化(INITIALIZATION)、...
java毕业设计源码,可供参考
Windows下的FRP图形化客户端,对应FRP版本0.61.1,需要64位操作系统
基于优化EKF的PMSM无位置传感器矢量控制研究_崔鹏龙.pdf
旧物置换网站的开发过程中,采用B / S架构,主要使用Java技术进行开发,结合最新流行的springboot框架。中间件服务器是Tomcat服务器,使用Mysql数据库和Eclipse开发 环境。该旧物置换网站包括管理员、用户、卖家。其主要功能包括管理员:首页、个人中心、用户管理、卖家管理、旧物类型管理、旧物信息管理、置换交易管理、系统管理等,卖家后台:首页、个人中心、旧物类型管理、旧物信息管理、置换交易管理。前台首页;首页、旧物信息、网站公告、个人中心、后台管理等,用户后台:首页、个人中心、旧物信息管理、置换交易管理、用户可根据关键字进行信息的查找自己心仪的信息等。 (1)用户功能需求 用户进入前台系统可以查看首页、旧物信息、网站公告、个人中心、后台管理等操作。前台首页用例如图3-1所示。 (2)管理员功能需求 管理员登陆后,主要功能模块包括首页、个人中心、用户管理、卖家管理、旧物类型管理、旧物信息管理、置换交易管理、系统管理等功能。 关键词:旧物置换网站,Mysql数据库,Java技术 springboot框架
项目工程资源经过严格测试运行并且功能上ok,可实现复现复刻,拿到资料包后可实现复现出一样的项目,本人系统开发经验充足(全栈全领域),有任何使用问题欢迎随时与我联系,我会抽时间努力为您解惑,提供帮助 【资源内容】:包含源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可实现复现;设计报告也可借鉴此项目;该资源内项目代码都经过测试运行;功能ok 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 【提供帮助】:有任何使用上的问题欢迎随时与我联系,抽时间努力解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 下载后请首先打开说明文件(如有);整理时不同项目所包含资源内容不同;项目工程可实现复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用
航天模拟器文件、蓝图、代码
两级式单相光伏并网仿真研究:MATLAB 2021a版本下的DC-DC变换与桥式逆变技术实现功率跟踪与并网效果优化,基于Matlab 2021a的两级式单相光伏并网仿真研究:实现最大功率跟踪与稳定的直流母线电压,两级式单相光伏并网仿真(注意版本matlab 2021a) 前级采用DC-DC变电路,通过MPPT控制DC-DC电路的pwm波来实现最大功率跟踪,mppt采用扰动观察法,后级采用桥式逆变,用spwm波调制。 采用双闭环控制,实现直流母线电压的稳定和单位功率因数。 并网效果良好,thd满足并网要求,附带仿真说明文件 ,两级式单相光伏并网仿真; MATLAB 2021a; DC-DC变换电路; MPPT控制; 扰动观察法; 桥式逆变; SPWM波调制; 双闭环控制; 直流母线电压稳定; 单位功率因数; 并网效果; THD。,MATLAB 2021a双闭环控制两级式单相光伏并网仿真研究
光伏MPPT仿真研究:光照强度和温度对太阳能电池输出特性的影响及调整策略,助力光伏发电学习。,光伏MPPT仿真研究:光照强度和温度对太阳能电池输出特性的影响及调整策略学习指南,光伏mppt仿真:通过调整太阳光照, 温度等因素 , 光照强度和温度对太阳能电池输出特性的影响。 可用于学习光伏发电 ,光伏MPPT仿真;太阳光照调整;温度影响;光照强度;太阳能电池输出特性。,光伏MPPT仿真:光照与温度对太阳能电池输出特性的影响研究
随着互联网技术的高速发展,人们生活的各方面都受到互联网技术的影响。现在人们可以通过互联网技术就能实现不出家门就可以通过网络进行系统管理,交易等,而且过程简单、快捷。同样的,在人们的工作生活中,也就需要互联网技术来方便人们的日常工作生活,实现工作办公的自动化处理,实现信息化,无纸化办公。 本课题在充分研究了在Springboot框架基础上,采用B/S模式,以Java为开发语言,MyEclipse为开发工具,MySQL为数据管理平台,实现的内容主要包括首页,个人中心,综合管理等功能。
航天模拟器文件、蓝图、代码
西门子Smart PLC四轴搬运取料机案例程序:从新手到项目的跃升之路,西门子Smart PLC四轴搬运取料机运动控制案例程序——PLC通信与伺服电机自动化控制解决方案,西门子200smart运动控制四轴搬运取料机案例程序 该程序为两台smart plc通过通讯控制四轴伺服电机的搬运取料机案例工程案例程序。 包含200smar_PLC程序+项目电气接线图(PDF图纸)+程序流程说明+触摸屏程序(步科) 程序包括伺服电机的启动,停止,原点定位,回归原点,位置控制以及方向控制。 包括了所有控制伺服电机的指令,里面有指令的用法的详细解释和程序说明。 拿来就能用的案例程序,结合程序案例中学习,就会轻松快速的掌握。 让你从新手直接能做项目。 动作流程: 客户上好料盒,M1轴伺服跑到第一片料的位置,气缸将料推出到上位置, M2轴在上料位置取件后移动到直线电机的,加工位置,m2轴上通过有上料下料的气缸, 用真空吸住料后m2轴移动到一个二维平台的加工位置,把带加工的料放到加工位置后, 激光器开始加工,加工完成后,通过M2轴把料取下,移动到成品放料位置,放料后, M3轴将成品料推送到M4
航天模拟器文件、蓝图、代码
基于双碳背景下阶梯式碳交易机制与电制氢的综合能源系统热电优化策略研究与求解分析,基于双碳背景下阶梯式碳交易机制与电制氢的综合能源系统热电优化策略及经济性研究,考虑阶梯式碳交易机制与电制氢的综合能源系统热电优化 “双碳”背景下,为提高能源利用率,优化设备的运行灵活性,进一步降低综合能源系统(IES)的碳排放水平,提出一种IES低碳经济运行策略。 首先考虑IES参与到碳交易市场,引入阶梯式碳交易机制引导IES控制碳排放;接着细化电转气(P2G)的两阶段运行过程,引入电解槽、甲烷反应器、氢燃料电池(HFC)替传统的P2G,研究氢能的多方面效益;最后提出热电比可调的热电联产、HFC运行策略,进一步提高IES的低碳性与经济性。 基于此,构建以购能成本、碳排放成本、弃风成本最小的低碳经济运行目标,将原问题转化为混合整数线性问题,运用CPLEX商业求解器进行求解,通过设置多个运行情景,对比验证了所提策略的有效性。 关键词:氢能;阶梯式碳交易机制;热电比可调;综合能源系统;低碳经济 ,关键词:阶梯式碳交易机制;综合能源系统(IES);热电优化;设备运行灵活性;碳排放水平;电转气(P2G);电解槽;氢
MMC分布式储能系统:实现恒功率与恒电压控制的无缝切换技术,MMC分布式储能系统实现恒功率与恒电压控制的无缝切换技术,mmc分布式储能 恒功率控制 恒电压控制 无缝切 ,核心关键词:MMC分布式储能; 恒功率控制; 恒电压控制; 无缝切换。,MMC分布式储能系统:恒功率与恒电压控制的无缝切换技术
多频多快拍稀疏贝叶斯学习目标方位序贯估计_牛海强.pdf
交错并联Boost PFC仿真电路模型:双闭环控制方式下的输出电压与电感电流优化控制,优良波形及Simulink仿真实现,交错并联Boost PFC仿真电路模型:双闭环控制方式下的电压外环与电感电流内环优化,优质波形表现于Simulink仿真中,交错并联Boost PFC仿真电路模型 采用输出电压外环,电感电流内环的双闭环控制方式 交流侧输入电流畸变小,波形良好,如效果图所示 simulink仿真 matlab simulink仿真模型 无报告哈 ,核心关键词:交错并联Boost PFC仿真电路模型;双闭环控制方式;输出电压外环;电感电流内环;交流侧输入电流畸变小;波形良好;Simulink仿真;Matlab Simulink仿真模型。,基于Simulink仿真的交错并联Boost PFC双闭环控制模型优化研究
基于53#三菱PLC与组态王系统的音乐喷泉控制系统设计与组态设计探讨,基于53#三菱PLC的组态王音乐喷泉控制系统设计与实现:音乐喷泉组态设计的探索与实践,53#三菱PLC和组态王音乐喷泉控制系统设计音乐喷泉组态设计音乐喷泉 ,53#三菱PLC; 组态王音乐喷泉控制系统设计; 音乐喷泉组态设计; 音乐喷泉,三菱PLC与组态王协同音乐喷泉控制系统设计