PyGobject(七十四)Gtk.Widget之Gtk.Scale

在介绍Gtk.Scale之前先介绍一下他的父类,Gtk.Range

Gtk.Range

Gtk.Range使Adjustment可视化,是Gtk.Scale和Gtk.Scrollbar部件的公共基类。
这里写图片描述

Methods

方法修饰词方法名及参数
get_adjustment ()
get_fill_level ()
get_flippable ()
get_inverted ()
get_lower_stepper_sensitivity ()
get_min_slider_size ()
get_range_rect ()
get_restrict_to_fill_level ()
get_round_digits ()
get_show_fill_level ()
get_slider_range ()
get_slider_size_fixed ()
get_upper_stepper_sensitivity ()
get_value ()
set_adjustment (adjustment)
set_fill_level (fill_level)
set_flippable (flippable)
set_increments (step, page)
set_inverted (setting)
set_lower_stepper_sensitivity (sensitivity)
set_min_slider_size (min_size)
set_range (min, max)
set_restrict_to_fill_level (restrict_to_fill_level)
set_round_digits (round_digits)
set_show_fill_level (show_fill_level)
set_slider_size_fixed (size_fixed)
set_upper_stepper_sensitivity (sensitivity)
set_value (value)

Virtual Methods

do_adjust_bounds (new_value)
do_change_value (scroll, new_value)
do_get_range_border (border_)
do_move_slider (scroll)
do_value_changed ()

Properties

NameTypeFlagsShort Description
adjustmentGtk.Adjustmentr/w/cThe Gtk.Adjustment that contains the current value of this range object
fill-levelfloatr/w/enThe fill level.
invertedboolr/w/enInvert direction slider moves to increase range value
lower-stepper-sensitivityGtk.SensitivityTyper/w/enThe sensitivity policy for the stepper that points to the adjustment’s lower side
restrict-to-fill-levelboolr/w/enWhether to restrict the upper boundary to the fill level.
round-digitsintr/w/enThe number of digits to round the value to.
show-fill-levelboolr/w/enWhether to display a fill level indicator graphics on trough.
upper-stepper-sensitivityGtk.SensitivityTyper/w/enThe sensitivity policy for the stepper that points to the adjustment’s upper side

Signals

NameShort Description
adjust-boundsEmitted before clamping a value, to give the application a chance to adjust the bounds.
change-valueThe Gtk.Range ::change-value signal is emitted when a scroll action is performed on a range.
move-sliderVirtual function that moves the slider.
value-changedEmitted when the range value changes.

Gtk.Scale

Gtk.Scale滑动条或刻度尺

继承关系

Gtk.Scale是Gtk.Range的直接子类
这里写图片描述
这里写图片描述

Methods

方法修饰词方法名及参数
staticnew (orientation, adjustment)
staticnew_with_range (orientation, min, max, step)
add_mark (value, position, markup)
clear_marks ()
get_digits ()
get_draw_value ()
get_has_origin ()
get_layout ()
get_layout_offsets ()
get_value_pos ()
set_digits (digits)
set_draw_value (draw_value)
set_has_origin (has_origin)
set_value_pos (pos)

Virtual Methods

do_draw_value ()
do_format_value (value)
do_get_layout_offsets ()

Properties

NameTypeFlagsShort Description
digitsintr/w/enThe number of decimal places that are displayed in the value
draw-valueboolr/w/enWhether the current value is displayed as a string next to the slider
has-originboolr/w/enWhether the scale has an origin
value-posGtk.PositionTyper/w/enThe position in which the current value is displayed

Signals

NameShort Description
format-valueSignal which allows you to change how the scale value is displayed.

例子

这里写图片描述
代码:

#!/usr/bin/env python3
# Created by xiaosanyu at 16/7/14
# section 118
# 
# author: xiaosanyu
# website: yuxiaosan.tk \
#          http://blog.csdn.net/a87b01c14
# created: 16/7/14

TITLE = "Scale"
DESCRIPTION = """
A Gtk.Scale is a slider control used to select a numeric value. To use it,
you’ll probably want to investigate the methods on its base class,
Gtk.Range, in addition to the methods for Gtk.Scale itself.
"""
import gi

gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, Gdk, Gio, GLib


class ScaleWindow(Gtk.Window):
    def __init__(self, *args, **kwargs):
        Gtk.Window.__init__(self, title="Scale Example")
        self.set_size_request(250, 200)
        box = Gtk.VBox(spacing=6)
        ad1 = Gtk.Adjustment(value=50, lower=0, upper=100, step_increment=1, page_increment=1,
                             page_size=0)
        ad2 = Gtk.Adjustment(value=50, lower=0, upper=100, step_increment=1, page_increment=1,
                             page_size=0)
        scale1 = Gtk.Scale(adjustment=ad1)
        scale1.set_show_fill_level(True)
        box.pack_start(scale1, False, False, 0)
        scale2 = Gtk.Scale(adjustment=ad2)
        for i in [x * 10 for x in range(11)]:
            scale2.add_mark(i, Gtk.PositionType.BOTTOM)
        box.pack_start(scale2, False, False, 0)
        self.add(box)


def main():
    win = ScaleWindow()
    win.connect("delete-event", Gtk.main_quit)
    win.show_all()
    Gtk.main()


if __name__ == "__main__":
    main()





代码下载地址:http://download.csdn.net/detail/a87b01c14/9594728

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sanxiaochengyu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值