wxPython教程(二)

wxPython教程(二)wxPython教程(二)—wxPython按钮要创建按钮,只需调用wx.Button()。使用wx.Button()创建按钮时,将面板解析为第一个参数非常重要。我们将它连接到面板上,因为连接到框架会使其全屏显示。面板使你可以选择将窗口小部件放置在窗口中的任何位置。参数(10,10)是面板上的位置。id参数是必需的,但它等于-1(wx.ID_ANY==-1)。第3个参数是按钮上的文本。你可以使用以下代码在wxPython中创建一个按钮:#!/usr/bin/python

大家好,又见面了,我是你们的朋友全栈君。

wxPython教程(二)—wxPython 按钮

要创建按钮,只需调用 wx.Button()。使用 wx.Button()创建按钮时,将面板解析为第一个参数非常重要。我们将它连接到面板上,因为连接到框架会使其全屏显示。
面板使你可以选择将窗口小部件放置在窗口中的任何位置。参数(10,10)是面板上的位置。id 参数是必需的,但它等于-1(wx.ID_ANY== -1)。第 3 个参数是按钮上的文本。

你可以使用以下代码在 wxPython 中创建一个按钮 :

#!/usr/bin/python
 
import wx
 
def onButton(event):
    print "Button pressed."
 
app = wx.App()
frame = wx.Frame(None, -1, 'win.py')
frame.SetDimensions(0,0,200,50)
 
panel = wx.Panel(frame, wx.ID_ANY)
button = wx.Button(panel, wx.ID_ANY, 'Test', (10, 10))
button.Bind(wx.EVT_BUTTON, onButton)
 
frame.Show()
frame.Centre()
app.MainLoop()

如果按下按钮,则会调用 onButton() 函数。我们用
button.Bind(wx.EVT_BUTTON,onButton)绑定(连接)它。

按钮图像

按钮上的图像 wxPython 支持在按钮上显示图像。只需稍微更改即可在按钮上显示图像。虽然该函数名为
wx.BitmapButton,但它支持其他图像格式。

bmp = wx.Bitmap("call-start.png", wx.BITMAP_TYPE_ANY)
button = wx.BitmapButton(panel, id=wx.ID_ANY, bitmap=bmp,
                          size=(bmp.GetWidth()+10,bmp.GetHeight()+10))

第一行加载图像,第二行创建按钮。

完整代码:

#!/usr/bin/python
 
import wx
 
def onButton(event):
    print "Button pressed."
 
app = wx.App()
frame = wx.Frame(None, -1, 'win.py')
frame.SetDimensions(0,0,200,70)
panel = wx.Panel(frame, wx.ID_ANY)
 
bmp = wx.Bitmap("call-start.png", wx.BITMAP_TYPE_ANY)
button = wx.BitmapButton(panel, id=wx.ID_ANY, bitmap=bmp,
                          size=(bmp.GetWidth()+10, bmp.GetHeight()+10))
 
button.Bind(wx.EVT_BUTTON, onButton)
button.SetPosition((10,10))
 
frame.Show()
frame.Centre()
app.MainLoop()
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/143585.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux系统平均负载3个数字的含义

    Linux系统平均负载3个数字的含义熟悉Linux系统的人都知道负载这个说法。负载就是指当前系统的资源使用情况。可以使用w,uptime和top命令实时查看监控系统的监控状况。越来越多人开始接触Linux操作系统,从VPS到无线路由的刷机系统(如OpenWRT、Tomato),同时也必不可少地会在各式各样的探针和系统监测界面上看到”系统平均负载”或者”LoadAverage…

    2025年11月4日
    4
  • Pycharm配置git环境「建议收藏」

    Pycharm配置git环境「建议收藏」Pycharm配置git环境在网上查了一些发现都已经过时了,有的根本没办法用,自己摸索了一下午。捣鼓的差不多了至少可以用hhhh默认各位老铁都已经安装好了,Git咯,并且有自己的github网址或者gitee网站咯0X1创建一个新项目首先新键一个新的项目,直接creat就好了创建好了如下:0X2匹配GitFile->Settings->VersionControl->Git详情如下:找到Setting,点击进入找到VersionControl,

    2022年8月28日
    6
  • asp.net core 关于自增长ID数据保护(IDOR漏洞)[通俗易懂]

    asp.net core 关于自增长ID数据保护(IDOR漏洞)[通俗易懂]开始前先大概的描述下IDOR漏洞是啥。嗯!举个例子,有一个角色下面有N个用户,拥有这个角色的用户都有自身创建的普通用户操作权限(比如删除)。我们一般情况都是通过表主键来操作这条记录的,那么这么一个功能就涉及到两个接口(查询列表,删除指定用户)。嗯!查询列表的接口自然是要带着用户对应的主键的(通过删除接口传入ID),聪明的人应该想到了;此时ID是明文的并且主键我们一般都是自增长的,此时就会出现我们可以通过猜测这个参数进行恶意删除。嗯!此时有些人可能会想(也是几种解决方式):我可以通过对参数进行加密签名来

    2022年5月1日
    62
  • setfacl 权限导出_linux学习-setfacl设置特定目录用户权限

    setfacl 权限导出_linux学习-setfacl设置特定目录用户权限需求:设置用户test,test1对特定的目录有读写执行权限,后加的文件也是这个权限。-R表示递归-m表示设置文件acl规则setfacl-R-md:u:test:rwx/data2/testsetfacl-R-md:u:test1:rwx/data2/test–删除ACL规则使用-bsetfacl-R-b/data2/test上面的d:u:详见如下,而perms对应的是…

    2022年6月22日
    38
  • cocos2dx 编写shader 遇到 溢出问题[通俗易懂]

    cocos2dx 编写shader 遇到 溢出问题

    2022年1月30日
    59
  • MySQL TENSE

    MySQL TENSE

    2021年5月5日
    137

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号