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


按钮

基本按钮

创建一个按钮,绑定点击事件,点击后修改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. UVa202

    刚刚开始写的适合感觉是转换成字符然后开始遍历一遍,后面发现各种不行,就回去看了看题目,重新构思,写了好久还是WA,最后只能看下大神的操作(我太菜了). 先简单梳理下题目意思:首先给出两个数,然后这两个 ...

  2. 封装FTP类

    using System; using System.Net; using System.Net.Sockets; using System.Text; using System.IO; using ...

  3. 五、Shell脚本高级编程实战第五部

    一.条件表达式 在bash的各种流程控制结构中通常要进行各种测试,然后根据测试结果执行不同的操作.有时也和if结合,让我们方便判断. test: 1)判断文件是否存在:test -f  file 2) ...

  4. Kafka及周边深度了解

    之前介绍了使用官方脚本自动化启动一个Fabric网络,并且所有的证书都是通过官方的命令行工具cryptogen直接生成网络中的所有节点的证书.在开发环境可以这么简单进行,但是生成环境下还是需要我们自定 ...

  5. shell时间函数

    function getlastday(){ if [ $# -lt 2 ]; then echo "usage: getlastday month dayofweek" echo ...

  6. Python字典基础

  7. Convert between Unix and Windows text files - IU Knowledge Base from: https://kb.iu.edu/d/acux

    vi. To input the ^M character, press Ctrl-v , and then press Enter or return . In vim, use :set ff=u ...

  8. learning Perl:91行有啥用? 88 print "\n----------------------------------_matching_multiple-line_text--------------------------\n"; 91 my $lines = join '', <FILE>;

    89 open FILE, "< file_4_ex_ch7.txt"     90     or die "cannot open file: $!"; ...

  9. 2)#ifndef和#pragma once

    #################################################################################################### ...

  10. Tript协议|伯尔尼公约|著作权|立法宗旨|自动保护|著作权集体管理|

    知识产权 国际条约: Tript协议是国际性公约,<与贸易有关的知识产权协定>(英文:Agreement on Trade-Related Aspects of Intellectual ...