本文介绍按钮,位图按钮,滑动块,微调控制器**、、


按钮

基本按钮

创建一个按钮,绑定点击事件,点击后修改Label

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import wx

class ButtonFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, -1, 'Button Example', size=(200,100))
panel = wx.Panel(self, -1)
self.button = wx.Button(panel, -1, "hello", pos=(50,20))
self.Bind(wx.EVT_BUTTON, self.OnClick, self.button)
self.button.SetDefault() def OnClick(self, event):
self.button.SetLabel("Clicked") if __name__=='__main__':
app = wx.PySimpleApp()
frame = ButtonFrame()
frame.Show()
app.MainLoop()

运行结果

Button的构造函数
wx.Button(parent, id, label, pos, size=wxDefaultSize, style=0, validator, name=”button“)

位图按钮

构造两个位图按钮,将焦点放在第一个位图按钮上,绑定点击事件,关闭窗体

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import wx

class BitmapButtonFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, -1, "Bitmap Button Example", size=(400,300))
panel = wx.Panel(self, -1)
bmp = wx.Image("test.bmp", wx.BITMAP_TYPE_BMP).ConvertToBitmap()
self.button = wx.BitmapButton(panel, -1, bmp, pos=(10,20))
self.Bind(wx.EVT_BUTTON, self.OnClick, self.button)
self.button.SetDefault()
self.button2 = wx.BitmapButton(panel, -1, bmp, pos=(200, 20), style=0)
self.Bind(wx.EVT_BUTTON, self.OnClick, self.button2) def OnClick(self, event):
self.Destroy() if __name__=='__main__':
app = wx.PySimpleApp()
frame = BitmapButtonFrame()
frame.Show()
app.MainLoop()

运行结果

PS
self.button.SetDefault()使按钮获得焦点,按下回车也能激活事件

滑动块

创建两个滑动块,一个横向,一个纵向

大专栏  wxpython(2)--按钮,位图按钮,滑动块,微调控制器pan class="line">1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import wx

class SliderFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, -1, "Slide Example", size=(300,350))
panel = wx.Panel(self, -1)
self.count = 0
slider = wx.Slider(panel, 100, 25, 1, 100, pos=(10,10), size=(250,-1),
style=wx.SL_HORIZONTAL|wx.SL_AUTOTICKS|wx.SL_LABELS)
slider.SetTickFreq(5)
slider = wx.Slider(panel, 100, 25, 1, 100, pos=(125,70), size=(-1,250),
style=wx.SL_VERTICAL|wx.SL_AUTOTICKS|wx.SL_LABELS)
slider.SetTickFreq(50) if __name__=="__main__":
app = wx.PySimpleApp()
frame = SliderFrame()
frame.Show()
app.MainLoop()

运行结果

构造函数
wx.Slider(parent, id, value, minValue, maxValue, pos=wxDefaultPosition, size=wx.DefaultSize, style=wx.SL_HORIZONTAL, validator=wx.DefaultValidator, name=”slider”)
value是滑块的初始值
minValue和maxValue是两端的值

样式
wx.SL_AUTOTICKS:如果设置这个样式,则滑块将显示刻度。刻度间的间隔通过
SetTickFreq方法来控制。
wx.SL_HORIZONTAL:水平滑块。这是默认值。
wx.SL_LABELS:如果设置这个样式,那么滑块将显示两头的值和滑块的当前只读值。有些平台可能不会显示当前值。
wx.SL_LEFT:用于垂直滑块,刻度位于滑块的左边。
wx.SL_RIGHT:用于垂直滑块,刻度位于滑块的右边。
wx.SL_TOP:用于水平滑块,刻度位于滑块的上部。
wx.SL_VERTICAL:垂直滑块。

微调控制器

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import wx

class SpinnerFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, -1, "Spinner Example", size=(100,100))
panel = wx.Panel(self, -1)
sc = wx.SpinCtrl(panel, -1, "", (30,20), (80,-1))
sc.SetRange(1,100)
sc.SetValue(5) if __name__=="__main__":
app = wx.PySimpleApp()
frame = SpinnerFrame()
frame.Show()
app.MainLoop()

运行结果

构造函数
wx.SpinCtrl(parent, id=-1, value=wx.EmptyString, pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.SP_ARROW_KEYS, min=0, max=100, initial=0, name=”wxSpinCtrl”)

PS:
可以使用SetRange(minVal, maxVal) 和 SetValue(value)方法来设置范围和值。
SetValue()函数要求一个字符串或一个整数。要得到值,使用方法:GetValue()(返回一个整数), GetMin(), 和 GetMax()。

下一篇,我们介绍进度条,复选框,单选按钮,单选框,列表框

wxpython(2)--按钮,位图按钮,滑动块,微调控制器的更多相关文章

  1. MFC 使用位图按钮,并且设置按钮的鼠标悬停效果

    系统环境:Windows 10软件环境:Visual C++ 2013 SP1本次目的:使用位图按钮,并且设置按钮的鼠标悬停效果 在用MFC开发时,界面是比较不好开发的一块.VC中自带了CBitmap ...

  2. iOS 自定义返回按钮,保留系统滑动返回

    原文链接 自定义返回按钮保留系统滑动返回手势.gif 1.简介 使用苹果手机,最喜欢的就是用它的滑动返回.作为一个开发者,我们在编写很多页面的时候,总是会因为这样那样的原因使得系统的滑动返回不可用.使 ...

  3. Android实现渐显按钮的左右滑动效果

    本示例演示在Android中实现带渐显按钮的左右滑动效果. 关于滑动效果,在我的上一篇博文中提到过,有兴趣的朋友可以访问: http://www.cnblogs.com/hanyonglu/archi ...

  4. android Button 切换背景,实现动态按钮和按钮颜色渐变

        android Button 切换背景,实现动态按钮和按钮颜色渐变 一.添加android 背景筛选器selector实现按钮背景改变     1.右键单击项目->new->Oth ...

  5. iOS 9应用开发教程之使用代码添加按钮美化按钮

    iOS 9应用开发教程之使用代码添加按钮美化按钮 丰富的用户界面 在iOS9中提供了很多的控件以及视图来丰富用户界面,对于这些视图以及控件我们在上一章中做了简单的介绍.本章我们将详细讲解这些视图. i ...

  6. iOS:步进UIStepper、滑动块UISlider、开关UISwitch的基本使用

    步进UIStepper.滑动块UISlider:当它们作为事件,被触发时,它们的值会发生改变.正因为如此,触发该事件时,可以一张一张翻阅浏览图片,,,, 步进UIStepper: @property( ...

  7. HMTL5滑动块研究

    滑动块图片 html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> &l ...

  8. UnityEditorWindow做一个TimeLine的滑动块

    UnityEditorWindow做一个TimeLine的滑动块 最近在做一个基于TimeLine的动画编辑器,在制作TineLine滑动条时遇到问题,网上查了好久,试了好多GUI组件都不满意.最后在 ...

  9. wxPython中菜单、按钮学习

    ---恢复内容开始--- wx.Window 是一个基类,许多构件从它继承.包括 wx.Frame 构件.技术上这意味着,我们可以在所有的 子类中使用 wx.Window 的方法.我们这里介绍它的几种 ...

随机推荐

  1. liunx常用命令笔记

    安装软件教程 linux安装java:https://www.cnblogs.com/lamp01/p/8932740.html linux安装mysql:https://www.cnblogs.co ...

  2. fiddler抓包可以抓到电脑数据抓不到手机上的数据------防火墙问题

    1.确保手机与电脑处于同一局域网,网络没问题,手机代理设置无误 2.确保fiddler设置没有任何问题 3.如果此时还是无法抓包,请打开控制面板----Windows防火墙------允许程序通过Wi ...

  3. \_\_del\_\_

    __del__ 一.__del__ __del__也称之为析构方法 __del__会在对象被删除之前自动触发 print('主')class People: def __init__(self, na ...

  4. 计量经济与时间序列_ACF自相关与PACF偏自相关算法解析(Python,TB(交易开拓者))

    1   在时间序列中ACF图和PACF图是非常重要的两个概念,如果运用时间序列做建模.交易或者预测的话.这两个概念是必须的. 2   ACF和PACF分别为:自相关函数(系数)和偏自相关函数(系数). ...

  5. Tarjan算法:求解无向连通图图的割点(关节点)与桥(割边)

    1. 割点与连通度 在无向连通图中,删除一个顶点v及其相连的边后,原图从一个连通分量变成了两个或多个连通分量,则称顶点v为割点,同时也称关节点(Articulation Point).一个没有关节点的 ...

  6. K 破忒头的匿名信(ac自动机+小dp)

    题:https://ac.nowcoder.com/acm/contest/4010/K 题意:用一些模式串凑成一个目标串,每个模式串有消耗,问组合的最小消耗,或不能组成输出-1: 分析:典型的AC自 ...

  7. python与mysql部分函数和控制流语法对比

    条件语句 python语法 a=int(input("输入一个数[0,100]成绩:")) if 100>=a>=90: print("优") el ...

  8. [原]procexp替换任务管理器

    2019-09-14更新:本文已经在新博客重新整理发布,请各位读者移步. process explorer有个功能是替换任务管理器,它是怎么实现的呢???   windows有个注册表项HKEY_LO ...

  9. Serverless 基本概念入门

    从行业趋势看,Serverless 是云计算必经的一场革命 2019 年,Serverless 被 Gartner 称为最有潜力的云计算技术发展方向,并被赋予是必然性的发展趋势.Serverless ...

  10. python编程常用功能(随时添加)

    1 pandas查看DataFrame列或具体值数据类型 2 left join/right join/inner join的区别 3 df_series.value_counts() 4 删除dat ...