wxpython界面切换_wxpython实现按钮切换界面的方法

本文实例为大家分享了wxpython按钮切换界面的具体实现代码,供大家参考,具体内容如下

#-*- coding:utf-8 -*-

import wx

class TestFrame(wx.Frame):

def __init__(self):

wx.Frame.__init__(self,None,-1,u'登陆',size=(370,280),style=wx.MINIMIZE_BOX|

wx.SYSTEM_MENU|wx.CAPTION|wx.CLOSE_BOX)

self.SetBackgroundColour('white')

self.button1 = wx.Button(self,-1,u'按钮1',pos = (80,180))

self.button1.Bind(wx.EVT_BUTTON,self.OnButtonClick1)

self.button2 = wx.Button(self,-1,u'按钮2',pos = (180,180))

self.button2.Bind(wx.EVT_BUTTON,self.OnButtonClick2)

#Button1显示组件

self.text1 = None

self.textc1 = None

#Button2显示组件

self.text2 = None

self.textc2 = None

def OnButtonClick1(self,event):

if not self.text1:

self.text1 = wx.StaticText(self,-1,u'用户名',(70,73),(50,-1),wx.ALIGN_CENTER)

self.text1.SetBackgroundColour('black')#设置背景颜色

self.text1.SetForegroundColour('white')#设置文本颜色

if not self.textc1:

self.textc1 = wx.TextCtrl(self,pos=(140,70))

if self.text2:

self.text2.Destroy()

if self.textc2:

self.textc2.Destroy()

def OnButtonClick2(self,event):

if self.text1:

self.text1.Destroy()

if self.textc1:

self.textc1.Destroy()

if not self.text2:

self.text2 = wx.StaticText(self,-1,u'密码',(70,123),(50,-1),wx.ALIGN_CENTER)

self.text2.SetBackgroundColour('black')#设置背景颜色

self.text2.SetForegroundColour('white')#设置文本颜色

if not self.textc2:

self.textc2 = wx.TextCtrl(self,pos=(140,120), style=wx.TE_PASSWORD)

if __name__ == "__main__":

app = wx.App()

frame = TestFrame()

frame.Show()

app.MainLoop()

在 __init__函数中先声明会用到的控件,然后在按钮响应时分别显示自己需要显示的控件,Destroy不需要的控件,来实现按钮对界面的切换。(博主自己摸索出来的,可能并不实用,但是感觉挺好理解)

运行如下:

20191119152853701.jpg

20191119153313206.jpg

20191119153347227.jpg

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

本文标题: wxpython实现按钮切换界面的方法

本文地址: http://www.cppcns.com/jiaoben/python/287397.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/339152.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jboss 4.3.0_JBoss BPM Suite 6.0.3版本的5个实用技巧

jboss 4.3.0上周,红帽发布了JBoss BPM Suite的下一个版本,标记为6.0.3 ,已订阅的用户可以在其客户门户中使用。 如果您对本发行版中的新增功能感到好奇,请在客户门户网站上在线查看发行说明和其余文档 。 我们正在寻找一些简单的…

C 条件变量使用详解

condition_variable介绍在C 11中,我们可以使用条件变量(condition_variable)实现多个线程间的同步操作;当条件不满足时,相关线程被一直阻塞,直到某种条件出现,这些线程才会被唤醒。其主要成员函…

HTML5新布局元素布局,HTML5新的布局元素

HTML5相对于HTML4新增了一些布局元素新增布局标签的优点:⒈更加注重文档的结构内容而不是以什么形式展现出来⒉对人的友好,更加语义化,增加代码的可读性⒊对计算机友好,浏览器更容易解析新增布局标签的内容:新增的布局…

pannel添加的子窗体很大_超简单的地瓜粉焖子做法全解,零失败

总以为做焖子是一项很大的工程,如果朋友知道你会做焖子定会用惊叹的语气崇拜你,想多一项厨艺吗,想让家人吃上自己亲手做的焖子吗?使用艺琳农场的地瓜粉一定让你出手不凡的,超简单,往下看哦新手为了担心霍霍…

swagger api文档_带有Swagger的Spring Rest API –创建文档

swagger api文档使REST API易于使用的真正关键是好的文档。 但是,即使您的文档做得很好,您也需要设置公司流程的权利以正确,及时地发布它。 确保利益相关者按时收到是一回事,但是您也要负责API和文档中的更新。 自动完成此过程可轻…

多线程队列的算法优化

【导读】:本文主要讲解多线程队列的优化。多线程队列(Concurrent Queue)的使用场合非常多,高性能服务器中的消息队列,并行算法中的Work Stealing等都离不开它。对于一个队列来说有两个最主要的动作:添加&am…

购买台式计算机方案,购买电脑的注意事项有哪些?

随着电脑的应用与普及,电脑已经逐渐成为人们学习、工作、生活中不可缺少的工具。同时,电脑的价格在逐渐下降,很多用户开始准备选购自己的电脑。选购电脑要考虑用户的需求、价格承受能力、商家服务质量等。1、明确用户需求购买电脑之前&#x…

linux 文件大小_整理 | Linux下列出目录内容命令

IT服务圈儿有温度、有态度的IT自媒体平台来源:良许Linux(ID:liangxuxiansheng)在 Linux 中,有非常多的命令可以让我们用来执行各种各样的任务。当我们想要像使用文件浏览器一样列出一个目录下的内容时,大家第一时间想到的是 ls 命…

mysql caching_Spring Caching抽象和Google Guava Cache

mysql cachingSpring为缓存昂贵的方法调用提供了强大的现成支持。 这里详细介绍了缓存抽象。 我的目标是使用Spring Guava Cache涵盖Spring现在提供的4.0版本的较新的缓存实现之一。 简而言之,请考虑一种具有几种慢速方法的服务: public class DummyB…

多线程程序中操作的原子性

0. 背景原子操作就是不可再分的操作。在多线程程序中原子操作是一个非常重要的概念,它常常用来实现一些同步机制,同时也是一些常见的多线程Bug的源头。本文主要讨论了三个问题:1. 多线程程序中对变量的读写操作是否是原子的?2. 多…

2018秋计算机基础在线作业华师,18秋华师《计算机基础》在线作业3(标准答案).doc...

【奥鹏】[华中师范大学]华师《计算机基础》在线作业试卷总分:100 得分:100第1题,控制面板可实现__________。A、对计算机全面控制操作B、对硬件驱动、软件设置及Windows外观设置C、计算机的关闭操作D、删除计算机中的任意文件正确答案:B第2题,页眉和页脚的建立方法相似&#xf…

.net mvc actionresult 返回字符串_ASP.NET Core中的Action的返回值类型

在Asp.net Core之前所有的Action返回值都是ActionResult,Json(),File()等方法返回的都是ActionResult的子类。并且Core把MVC跟WebApi合并之后Action的返回值体系也有了很大的变化。ActionResult类ActionResult类是最常用的返回值类型。基本沿用了之前Asp.net MVC的那…

.jdeveloper_在JDeveloper 12.1.3中为WebSocket使用Java API

.jdeveloper介绍 最新版本的JDeveloper 12c(12.1.3.0)和WebLogic Server 12.1.3一起提供了一些新的Java EE 7功能。 其中之一是对用于WebSocket的JSR 356 Java API的支持。 实际上,从12.1.2.0版本开始就支持WebSocket协议(RFC 645…

为什么程序员需要关心顺序一致性,而不是 Cache 一致性?

本文所讨论的计算机模型是Shared Memory Multiprocessor,即我们现在常见的共享内存的多核CPU。本文适合的对象是想用C 或者Java进行多线程编程的程序员。本文主要包括对Sequential Consistency和Cache Coherence的概念性介绍并给出了一些相关例子,目的是…

南科大计算机科学与技术专业如何,广州大学、深圳大学、汕头大学、南方科技大学,如何排名?...

广州大学、深圳大学、汕头大学和南方科技大学都是广东省内的一流大学。为了方便各位广东考生在填报志愿的时候有一个更好的了解,顺哥收集整理了这4所学校的一些信息。希望能帮助到大家。深圳大学2021年校友会排名省内第4,全国第57,中国一流大…

canoco5冗余分析步骤_打造高性能的大数据分析平台

大数据时代,大数据的应用与挖掘,大数据的分析和决策,大数据在经济社会的运行轨道上发挥着愈来愈重要的作用。对于大数据分析,现在好多互联网金融公司和传统的商业银行、证券基金公司都非常看重。个个都想在大数据分析中获得重要信…

C 迭代器iterator的实现原理

在经典的设计模式中,有一种迭代器模式,定义为:提供一个对象来顺序访问聚合对象中的一系列数据,而不暴露聚合对象的内部表示。迭代器的主要优点如下:访问一个聚合对象的内容而无须暴露它的内部表示。遍历任务交由迭代器…

html如何在画布上加层,在Canvas中嵌套Html

大概是这样的,现在需要根据一下上传的图片以及一些输入生成图片。本来打算用imagemagick的,但是后来觉得这样前后端要搞两份不同的代码,然后imagemagick使用起来远没有canvas用起来顺手啊。So,最终决定就用Canvas搞定它了&#xf…

如何用illustrator做技术手册_做期货用什么技术指标分析?

来源:期汇股金作者:DC链接:做期货用什么技术指标分析?投资期货市场首先我们要有一套自己的技术分析,那么我们有什么样的技术指标分析最准确呢,没有最准确的技术指标,要看你运用的程度&#xff0…

根据字符串自动构造对应类

问题的起因是,我在做一个demo,有一个对象基类,以及一堆派生出的子对象,比如球体、立方体之类的对象。还有一个对象管理类,用于存储场景中的所有对象。那么在初始化的时候,代码是这么写的:class …