精华内容
下载资源
问答
  • 易语言超级列表框滚动条源码,超级列表框滚动条
  • 该资源演示了单列列表数据达到设置条目时开始进行滚动更新,使得界面只显示最新的记录数据。资源包含可运行的VI,由于只能上传一个VI,关于字符串的、多列列表滚动将在其他位置上传
  • labview状态显示窗口专用,采用列表框,可以动态的滚动显示信息,内含注解!
  • LABVIEW多列列表框图实时写入数据,数据变多时为实时监测让滚轴自动下滑监视最后一行或将数据一直写入第一行
  • % 修复当前图中所有列表框/编辑框的滚动条smart_scrollbars(hPanel); % 修复了 hPanel 容器中所有列表框/编辑框的滚动条smart_scrollbars(hListbox); % 修复指定列表框滚动条set(gcf,'SizeChangedFcn',@smart_...
  • 读取文本文件到列表框中,逐行显示,并有水平滚动条和垂直滚动条,可以全部显示大文件
  • 列表框列表空滚动条自动下滑

    千次阅读 2018-05-30 11:43:00
    列表框增加信息后添加如下代码:SendMessage(m_ListBoxNotes.m_hWnd,WM_VSCROLL,MAKEWPARAM(SB_BOTTOM,0),NULL);其中m_ListBoxNotes为控件控制型变量
    列表框增加信息后添加如下代码
    :SendMessage(m_ListBoxNotes.m_hWnd,WM_VSCROLL,MAKEWPARAM(SB_BOTTOM,0),NULL);
    其中m_ListBoxNotes为控件控制型变量
    展开全文
  • vc 列表框 listbox 水平滚动条的增加

    热门讨论 2009-07-28 11:33:25
    vc 中为列表框增加水平滚动条,非常适合大家用
  • 易语言超级列表框显示百万记录源码,超级列表框显示百万记录,滚动条位置改变,API_SetScrollInfo,API_SetScrollRange,API_GetScrollRange,调用窗口过程,设置窗口属性,API_GetScrollInfo,发送消息1,API_ShowScrollBar
  • Python之tkinter 列表框Listbox与滚动条Scrollbar

    千次阅读 多人点赞 2020-03-25 10:48:13
    文章目录建立列表框 建立列表框   列表框(Listbox)是一个显示一系列选项的Widget控件,用户可以进行单项或多项的选择 使用格式如下: Listbox(父对象, options, ...) ...

    列表框Listbox简介

      列表框(Listbox)是一个显示一系列选项的Widget控件,用户可以进行单项或多项的选择

    使用格式如下:

    Listbox(父对象, options, ...)
    

    参数:

    • 第一个参数:父对象,表示这个列表框将建立在哪一个窗口内
    • 第二个参数:options,参数如下
    参数含义
    borderwidth边界宽度
    默认是两个像素
    bd边界宽度
    默认是两个像素
    background背景色彩
    bg背景色彩
    cursor当鼠标光标移至列表框上时的形状
    foreground前景色彩
    fg前景色彩
    font字形
    height高,单位是字符,默认是10
    highlightcolor当列表框取得焦点时的颜色
    highlightthinckness当列表框取得焦点时的厚度
    listvariable以变量方式处理选项内容
    relief可由此控制列表框外框
    默认是SUNKEN
    selectbackground被选取字符串的背景色彩
    selectmode可以决定有多少个选项可以被选,以及鼠标拖拽如何影响选项
    width宽,单位是字符宽
    xscrollcommand在X轴使用滚动条
    yscrollcommand在Y轴使用滚动条
    selectmode的参数
    参数含义
    BROWSE这是默认值,我们可以选择一个选项,如果选取一个选项同时拖拽鼠标,将造成选项最后的位置是被选取的项目位置
    SINGLE只能选择一个选项,可以用单击方式选取,不可用拖拽方式更改所选的项目
    MULTIPLE可以选择多个选项,单击项目可以切换是否选择该项目
    EXTENDED单击第一个项目然后拖拽到最后一个项目,即可选择这个区间的一系列选项。
    单击可以选择第一个项目,此时若是按住Shift键并单击另一个项目,可以选取区间项目

    Listbox 的初步应用

    例子

    import tkinter
    
    root = tkinter.Tk()
    root.geometry("300x180")
    
    # 建立listbox1
    listbox1 = tkinter.Listbox(root)
    listbox1.pack(side=tkinter.LEFT, padx=5, pady=5)
    # 建立listbox2
    listbox2 = tkinter.Listbox(root, height=5, relief='raised')
    listbox2.pack(anchor=tkinter.N, side=tkinter.LEFT, padx=5, pady=5)
    
    root.mainloop()
    

    运行结果:
    在这里插入图片描述

    建立列表框项目 insert()

      可以使用insert()方法为列表框建立项目,这个方法的使用格式如下

    insert(index, elements)
    

    参数:

    • 第一个参数:父index,是项目插入的位置,如果是插在最后面可以使用END
    • 第二个参数:elements,插入的字符串

    例子

    import tkinter
    
    root = tkinter.Tk()
    
    # 建立listbox1
    listbox1 = tkinter.Listbox(root)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    listbox1.insert(tkinter.END, 'abc')
    listbox1.insert(tkinter.END, '123')
    listbox1.insert(tkinter.END, '!$#')
    
    root.mainloop()
    

    运行结果:
    在这里插入图片描述
    其实也可以这样

    listbox1.insert(tkinter.END, 'abc', '123', '!$#')
    

    运行结果也是一样的

    如果有很多的项目需要插入,我们可以使用循环的方式来进行

    例子

    import tkinter
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆', '混沌', '糊汤粉', '饺子', '豆皮', '牛肉面', '汤圆']
    # 建立listbox1
    listbox1 = tkinter.Listbox(root)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    for food in foods:
        listbox1.insert(tkinter.END, food)
    root.mainloop()
    

    运行结果:
    在这里插入图片描述
    例子:重新设计程序,使列表框可以多选

    import tkinter
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆', '混沌', '糊汤粉', '饺子', '豆皮', '牛肉面', '汤圆']
    # 建立listbox1
    listbox1 = tkinter.Listbox(root, selectmode=tkinter.MULTIPLE)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    for food in foods:
        listbox1.insert(tkinter.END, food)
    root.mainloop()
    

    运行结果:
    在这里插入图片描述
    例子:重新设计,单击一个项目,按住Shift可以选择一个区间内的项目

    import tkinter
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆', '混沌', '糊汤粉', '饺子', '豆皮', '牛肉面', '汤圆']
    # 建立listbox1
    listbox1 = tkinter.Listbox(root, selectmode=tkinter.EXTENDED)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    for food in foods:
        listbox1.insert(tkinter.END, food)
    root.mainloop()
    

    运行结果:
    在这里插入图片描述
    前面是单击并拖拽,后面是使用Shift键选择一个区间内的项目

    使用insert(ACTIVE, elements),表示是在目前选项前面加入一个项目,如果尚未选择选项则此ACTIVE是0

    例子:使用ACTIVE

    import tkinter
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆', '混沌', '糊汤粉', '饺子']
    # 建立listbox1
    listbox1 = tkinter.Listbox(root, selectmode=tkinter.EXTENDED)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    for food in foods:
        listbox1.insert(tkinter.END, food)
    listbox1.insert(tkinter.ACTIVE, '豆皮', '牛肉面', '汤圆')
    root.mainloop()
    

    运行结果:
    在这里插入图片描述

    显示已经在最上面了,也就是一次性在最上面插入了三个项目

    Listbox的基本操作

    下面是一些常用的Listbox 控件操作的方法

    操作方法含义
    size()传回列表项目的数量
    selection_set()选取特定索引项
    delete()删除特定索引项
    get()传回指定索引项
    curselection()传回选取项目的索引
    selection_include()检查指定索引是否被选取
    列出列表框的选项数量 size()

    例子

    import tkinter
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆', '混沌', '糊汤粉', '饺子', '豆皮', '牛肉面', '汤圆']
    # 建立listbox1
    listbox1 = tkinter.Listbox(root, selectmode=tkinter.EXTENDED)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    for food in foods:
        listbox1.insert(tkinter.END, food)
    print('数量是:', listbox1.size())
    root.mainloop()
    

    运行结果:

    数量是: 12
    
    选取特定索引项 selection_set()

      如果selection_set() 方法内含一个参数,表示选取这个索引项,这个功能常被用于在建立Listbox 后,设定初次选择的项目,通俗易懂的说,就是一进去默认选的是哪一个

    例子

    import tkinter
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆', '混沌', '糊汤粉', '饺子', '豆皮', '牛肉面', '汤圆']
    # 建立listbox1
    listbox1 = tkinter.Listbox(root, selectmode=tkinter.EXTENDED)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    for food in foods:
        listbox1.insert(tkinter.END, food)
    
    # 这里设置默认选定的索引项
    listbox1.select_set(1)
    root.mainloop()
    

    运行结果:
    在这里插入图片描述
      如果设置两个索引值,就表示选取区间选项,第一个参数是起始索引项,第二个参数是区间的结束索引项

    例子

    import tkinter
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆', '混沌', '糊汤粉', '饺子', '豆皮', '牛肉面', '汤圆']
    # 建立listbox1
    listbox1 = tkinter.Listbox(root, selectmode=tkinter.EXTENDED)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    for food in foods:
        listbox1.insert(tkinter.END, food)
    
    # 这里设置默认选定的索引项
    listbox1.select_set(1, 3)
    root.mainloop()
    

    运行结果:
    在这里插入图片描述

    删除特定索引项

      如果delete() 方法内含一个参数,表示删除这个索引项

    例子

    import tkinter
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆', '混沌', '糊汤粉', '饺子', '豆皮', '牛肉面', '汤圆']
    # 建立listbox1
    listbox1 = tkinter.Listbox(root, selectmode=tkinter.EXTENDED)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    for food in foods:
        listbox1.insert(tkinter.END, food)
    
    # 这里设置删除选定的索引项
    listbox1.delete(0)
    root.mainloop()
    

    运行结果:
    在这里插入图片描述
      可以很自然的看到“热干面”选项已经不见了

      如果delete() 有两个参数是,表示选取区间选项,第一个参数是区间的起始索引项,第二个参数是区间的结束索引项

    例子

    import tkinter
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆', '混沌', '糊汤粉', '饺子', '豆皮', '牛肉面', '汤圆']
    # 建立listbox1
    listbox1 = tkinter.Listbox(root, selectmode=tkinter.EXTENDED)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    for food in foods:
        listbox1.insert(tkinter.END, food)
    
    # 这里设置删除选定的索引项
    listbox1.delete(0, 1)
    root.mainloop()
    

    运行结果:
    在这里插入图片描述
      可以看到“热干面、担担面”两个选项已经删除了

    传回指定的索引项 get()

      如果get() 方法内含一个参数,表示传回这个索引项的元素内容

    例子

    import tkinter
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆', '混沌', '糊汤粉', '饺子', '豆皮', '牛肉面', '汤圆']
    # 建立listbox1
    listbox1 = tkinter.Listbox(root, selectmode=tkinter.EXTENDED)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    for food in foods:
        listbox1.insert(tkinter.END, food)
    
    print(listbox1.get(1))
    root.mainloop()
    

    运行结果:

    担担面
    

      如果在get() 方法内有两个参数,则表示传回区间选项,第一个参数是区间的起始索引项,第二个参数是区间的结束索引项,传回的值用元组方式传回

    例子

    import tkinter
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆', '混沌', '糊汤粉', '饺子', '豆皮', '牛肉面', '汤圆']
    # 建立listbox1
    listbox1 = tkinter.Listbox(root, selectmode=tkinter.EXTENDED)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    for food in foods:
        listbox1.insert(tkinter.END, food)
    
    print(listbox1.get(1, 3))
    root.mainloop()
    

    运行结果:

    ('担担面', '炸酱面', '面窝')
    
    传回所选取项目的索引 curselection()

      注意!注意!是索引,不是索引项

    例子

    import tkinter
    
    def show():
        index = listbox1.curselection()
        print(index)
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆', '混沌', '糊汤粉', '饺子', '豆皮', '牛肉面', '汤圆']
    # 建立listbox1
    listbox1 = tkinter.Listbox(root, selectmode=tkinter.EXTENDED)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    for food in foods:
        listbox1.insert(tkinter.END, food)
    
    button = tkinter.Button(root, text='print', command=show)
    button.pack()
    root.mainloop()
    

    运行结果:
    在这里插入图片描述

    我们可以结合get() 方法使用

    例子

    def show():
        index = listbox1.curselection()
        for i in index:
            print(listbox1.get(i))
    

    运行结果:
    在这里插入图片描述

    检查指定索引项是否被选取 selection_includes()

      如果指定索引项被选取会传回True,否则传回False

    例子

    import tkinter
    
    def show():
        # 检查第二个选项有无被选取
        print(listbox1.select_includes(1))
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆', '混沌', '糊汤粉', '饺子', '豆皮', '牛肉面', '汤圆']
    # 建立listbox1
    listbox1 = tkinter.Listbox(root, selectmode=tkinter.EXTENDED)
    listbox1.pack(padx=5, pady=5)
    
    # 插入的位置与信息
    for food in foods:
        listbox1.insert(tkinter.END, food)
    
    button = tkinter.Button(root, text='print', command=show)
    button.pack()
    root.mainloop()
    

    运行结果:
    在这里插入图片描述

    Listbox与事件绑定

    虚拟绑定应用于单选

      当Listbox执行选取操作时会产生<<ListboxSelection>>虚拟事件,可以由此设置事件处理程序

    例子

    import tkinter
    
    def show(event):
        # 取得事件对象object
        object = event.widget
        # 取得所选的项目索引
        index = object.curselection()
        # 由索引取得所选的项目,关联到label中
        var.set(object.get(index))
    
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆']
    
    # 显示区
    var = tkinter.StringVar()
    label = tkinter.Label(root, textvariable=var)
    label.pack(pady=5)
    
    # 列表框
    lb = tkinter.Listbox(root)
    for i in foods:
        lb.insert(tkinter.END, i)
    lb.bind("<<ListboxSelect>>", show)
    lb.pack(pady=5)
    
    root.mainloop()
    

    运行结果:
    在这里插入图片描述
      单击Listbox中选项时会产生虚拟的<<ListboxSelection>>事件,此时可以触发itemChanged()方法处理此事件

    其实可以省略第四行,直接使用原先的Listbox对象也可以

    例子

    def show(event):
        # 取得所选的项目索引
        index = lb.curselection()
        # 由索引取得所选的项目,关联到label中
        var.set(lb.get(index))
    

    运行结果是一样的

    或者我们不使用虚拟绑定,直接简单粗鲁的使用单击选项,也行

    例子

    lb.bind("<Button-1>", show)
    

    运行结果是一样的!

    注意:这种方式pycharm会报错,但是依旧可以运行!

    虚拟绑定应用于多选

    例子

    import tkinter
    
    def show(event):
        object = event.widget
        indexs = object.curselection()
        for index in indexs:
            print(object.get(index))
        print('------------')
    
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆']
    
    # 列表框
    lb = tkinter.Listbox(root, selectmode=tkinter.EXTENDED)
    for i in foods:
        lb.insert(tkinter.END, i)
    
    
    lb.bind("<<ListboxSelect>>", show)
    lb.pack(pady=5)
    
    root.mainloop()
    

    运行结果:
    在这里插入图片描述

    活用加入和删除项目

    例子

    import tkinter
    
    def add():
        varAdd = entry.get()
        if (len(varAdd.strip())) == 0:
            return
        listbox.insert(tkinter.END, varAdd)
        entry.delete(0, tkinter.END)
    
    def delete():
        index = listbox.curselection()
        if len(index) == 0:
            return
        listbox.delete(index)
    
    
    root = tkinter.Tk()
    # 输入框
    entry = tkinter.Entry(root)
    entry.grid(row=0, column=0, padx=5, pady=5)
    
    # 增加按钮
    buttonAdd = tkinter.Button(root, text='增加', width=10, command=add)
    buttonAdd.grid(row=0, column=1, padx=5, pady=5)
    
    # 列表显示框
    listbox = tkinter.Listbox(root)
    listbox.grid(row=1, column=0, padx=5, pady=5)
    
    # 删除按钮
    buttonDelete = tkinter.Button(root, text='删除', width=10, command=delete)
    buttonDelete.grid(row=1, column=1, padx=5, pady=5, sticky=tkinter.N)
    
    root.mainloop()
    

    运行结果:
    在这里插入图片描述

    Listbox 项目的排序

    例子

    import tkinter
    
    def show():
        # 获取复选框是否勾选的值,如果勾选,值为True
        if var.get():
            # 定义排序的变量
            rebBool = True
        else:
            rebBool = False
        # 把我们列表框的几个值获取并转换成列表,方便排序
        listTem = list(listbox.get(0, tkinter.END))
        # 排序
        sortedList = sorted(listTem, reverse=rebBool)
        # 删除之前存在的列表框的值
        listbox.delete(0, tkinter.END)
        # 重新插入我们排序好的列表框的值
        for i in sortedList:
            listbox.insert(tkinter.END, i)
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆']
    listbox = tkinter.Listbox(root)
    for food in foods:
        listbox.insert(tkinter.END, food)
    listbox.pack(padx=10, pady=5)
    
    # 创建排序按钮
    button = tkinter.Button(root, text='排序', command=show)
    button.pack(side=tkinter.LEFT, padx=10, pady=5)
    
    var = tkinter.BooleanVar()
    cheakbutton = tkinter.Checkbutton(root, text='从大到小排序', variable=var)
    cheakbutton.pack(side=tkinter.LEFT)
    
    root.mainloop()
    

    运行结果:
    在这里插入图片描述

    拖拽 Listbox 中的项目

    例子

    import tkinter
    
    
    # 处理单击选项
    def show(event):
        # nearest可以传回最接近y坐标在Listbox的索引
        # 传回目前选项的索引
        listbox.index = listbox.nearest(event.y)
    
    
    # 处理拖拽选项
    def showInfo(event):
        # 获取目前选项的新索引
        newIndex = listbox.nearest(event.y)
        # 判断,如果向上拖拽
        if newIndex < listbox.index:
            # 获取新位置的内容
            x = listbox.get(newIndex)
            # 删除新内容
            listbox.delete(newIndex)
            # 将新内容插入,相当于插入我们移动后的位置
            listbox.insert(newIndex + 1, x)
            # 把需要移动的索引值变成我们所希望的索引,达到了移动的目的
            listbox.index = newIndex
        elif newIndex > listbox.index:
            # 获取新位置的内容
            x = listbox.get(newIndex)
            # 删除新内容
            listbox.delete(newIndex)
            # 将新内容插入,相当于插入我们移动后的位置
            listbox.insert(newIndex - 1, x)
            # 把需要移动的索引值变成我们所希望的索引,达到了移动的目的
            listbox.index = newIndex
    
    
    
    root = tkinter.Tk()
    foods = ['热干面', '担担面', '炸酱面', '面窝', '油条', '豆浆']
    listbox = tkinter.Listbox(root)
    for food in foods:
        listbox.insert(tkinter.END, food)
        listbox.bind('<Button-1>', show)
        listbox.bind('<B1-Motion>', showInfo)
    listbox.pack(padx=10, pady=5)
    
    
    root.mainloop()
    

    运行结果:
    在这里插入图片描述

    程序中用到的方法

    nearest(event.y)
    

    上述代码行,可以传回最接近y坐标在Listbox中的索引。当有单击操作时会触发getIndex()方法,第4行可以传回目前选项的索引,在拖拽过程中会触发gragJob()方法,在第7行可以传回新选项的索引,因为在拖拽过程中,这个方法会不断的被触发,所以至于被触发多少次视移动速度而定

    假如移动担担面,它的索引是1, 咱们向下拖拽,整个流程如下

    • 新索引位置为2
    • 获得索引内容 ‘面窝’,参照第27行
    • 删除新内容 ‘面窝’,参照第29行
    • 将 ‘面窝’ 内容插入在索引1的位置,相当于插入到我们移动前的位置,参照第31行
    • 这个时候把新的索引位置传给 ‘担担面’ ,根据索引来变换位置,变成了2,这样就达到了移动的目的了,参照第33行

    滚动条的设计

      在默认环境中Listbox 是没有滚动条的,但是如果选项太多,将造成部分选项无法显示,可以将滚动条Scrollbar控件加入Listbox中

    注:Scrollbar控件除了可以应用在Listbox上,也可以应用在Text和Canvas上

    使用格式如下:

    Scrollbar(父对象, options, ...)
    

    参数:

    • 第一个参数:父对象,表示这个滚动条将建立在哪一个窗口内
    • 第二个参数:options,参数如下
    参数含义
    activebackground当光标经过滚动条时,滚动条和方向箭头的颜色
    bg 或 background当光标没有经过滚动条时,滚动条和方向箭头的颜色
    bd 或 borderwidth边界宽度
    默认是两个像素
    command滚动条移动时所触发的方法
    cursor当鼠标光标在滚动条上时的形状
    highlightbackground当滚动条没有获得焦点时的颜色
    highlightcolor当滚动条取得焦点时的颜色
    highlightthinckness当取得焦点时的厚度
    默认是1
    jump每次短距离的拖拽滚动条时都会触发command的方法
    如果设为1,则只有放开鼠标按键时,才会触发command的方法
    默认是0
    orient可设置HORIZONTAL/VERTICAL,分别是水平轴/垂直轴
    repeatdelay可以设置按住滚动条移动的停滞时间
    单位是ms
    默认是300ms
    takefocus正常可以用Tab键的方式切换滚动条成为焦点
    如果设置为0,则取消此设置
    troughcolor滚动条槽的颜色
    width宽,单位是字符宽

    例子

    import tkinter
    
    root = tkinter.Tk()
    
    sc = tkinter.Scrollbar(root)
    sc.pack(side=tkinter.RIGHT, fill=tkinter.Y)
    
    # 列表动,滚动条跟着动
    lb = tkinter.Listbox(root, yscrollcommand=sc.set)
    for i in range(50):
        lb.insert(tkinter.END, "列表 " + str(i))
    lb.pack(side=tkinter.LEFT, fill=tkinter.BOTH, expand=True)
    # 滚动条动,列表跟着动
    sc.config(command=lb.yview)
    
    root.mainloop()
    

    运行结果:
    在这里插入图片描述

    谢谢观看,笔者会持续更新,如有错误或者建议,请私信我

    展开全文
  • [tkinter]为列表框添加滚动条

    千次阅读 2019-09-24 02:06:08
    为了给列表框配备滚动条,看来很多别人的博客 终于解决了问题 ,现在我总结一下 from tkinter import * root = Tk() lb = Listbox(root) scr = Scrollbar(root) lb.config(yscrollcommand=scr.set) ...

    为了给列表框配备滚动条,看来很多别人的博客

    终于解决了问题 ,现在我总结一下

    from tkinter import *
    
    root = Tk()
    
    lb = Listbox(root)
    scr = Scrollbar(root)
    
    lb.config(yscrollcommand=scr.set)
    scr.config(command=lb.yview)
    
    for i in range(20):
        lb.insert(END, "第%s项" % i)
    
    lb.pack(side=LEFT, fill=Y)
    scr.pack(side=RIGHT, fill=Y)
    
    root.mainloop()

    效果图

    关键在标记红色的两句,为了让两个控件相互配合,两个控件都得设置

    lb.config(yscrollcommand=scr.set)

    列表框换“视角”后 更新的滚动条状态
    scr.config(command=lb.yview)

    滚动条拖动后 调整列表框“视角”

     

    PS:有一些博客只写了其中一条,,实际效果“很有毛病”,希望我以后不会再踩这个坑

    转载于:https://www.cnblogs.com/ansver/p/10584630.html

    展开全文
  • 窗口上的子控件比较多、超出窗口显示范围时,自动给窗口加上滚动条,并响应滚动条操作。源码能够学习子类化、消息处理、滚动条操作。有比较详细的注释,方便新手学习。
  • 当下拉菜单选项比较多的时候,select下拉列表内容过多,在IE中默认是30条选项,firefox默认是20条, 超过自动出现滚动条,但是在没出现滚动条时候样式特别不协调。本次上传的代码将提供一种方法将select下拉框添加...
  • 在对框中有一个编辑框和一个按钮,点击按钮可以把编辑框中输入的文本显示列表框中,如果文本超过列表框宽度,可以实现水平滚动查看。
  • 列表框滚动条的设置

    千次阅读 2012-10-17 16:28:14
    对List Box上滚动条响应函数的设置 ,因为滚动条是List Box上信息变多而出现的,要想调用类表框的响应函数,则  在窗口中 找到相应的响应函数!

    List Box上滚动条响应函数的设置 ,因为滚动条是List Box框上信息变多而出现的,要想调用类表框的响应函数,则

     在窗口中  找到相应的响应函数!

    展开全文
  • 带搜索带滚动条的下拉列表框 1、先复制一个圆角文本框,讲文本框属性设置只读 2、在框内加入向上 向下的 三角形(一开始先别叠加到一块,后面需要设置这两个形状的点击事件用户控制 选项区隐藏显示) 3、...
  • 下拉列表框滚动条

    千次阅读 2017-10-29 15:07:51
    package hello; import java.awt.*; import javax.swing.*; public class Hello extends JFrame { JPanel mb1,mb2; JLabel bq1,bq2; JComboBox xlk;... //列表,若没有JScrollPane,则窗口不会滚动
  • 下拉选择、弹出滚动条操作

    千次阅读 2019-09-28 10:45:31
    1. 掌握下拉选择的操作方法 2. 掌握处理弹出的方法 3. 掌握调用JavaScript方法 1. 下拉选择操作 说明:下拉框就是HTML中<select>元素; 1.1 如何操作下拉选择? 案例 需求:使用‘注册A.html’...
  • PyQt5 技术篇-scrollArea不显示滚动条解决方法,Qt Designer不显示滚动条滚动条显示和隐藏。 首先给大家展示一下,必显示滚动条的方法。 就是设置横向、纵向滚动条策略为总是显示:`ScrollBarAlwaysOn` 综合,只...
  • CHorzListBox类继承自CListBox, 可以根据内容自动显示调整水平滚动条
  • android ListView设置不显示滚动条

    千次阅读 2016-09-22 11:56:37
    android ListView设置不显示滚动条 android:scrollbars="none
  • 表格、列表滚动条是在网页设计中比较常用的一些元素。在CSS中也提供了许多属性来进行表格、列表滚动条样式的设置。通过这些样式的设置,可以让网页内容更加吸引浏览者的注意。 表格 在CSS中有一些样式是在表格...
  • BCB 列表框 滚动条

    千次阅读 2008-04-24 17:08:00
    列表框 ”一屏“ 显示 不下,会出现滚动条,此时怎么判断那些ITEM在显示之列,那些不在呢?给定一个ITEM ID 能否获得这个属性能否得到一个显示的ITEM ID 的范围呢?
  • 下拉列表滚动条

    千次阅读 2018-11-25 23:29:16
    下拉列表框滚动条 在做选择时会遇到下拉列表和滚动条,关键词JLabel,JComboBox,JList,JScrollPane 2, 此案例示例如下 增加的步骤:a,先定义标签 JLabel,这里标签有两个 b,将区域和学历合成数组,合成数组后...
  • 今天在QT里将视频显示在停靠窗口里,并且能够缩小后,出现滑动,放大到一定阶段则不再放大。 下面是代码: dockwindows.h #ifndef DOCKWINDOWS_H #define DOCKWINDOWS_H #include &lt;QMainWindow&gt;...
  • 然而,如果用户必须将滚动条拉很远才能看到所有的选项的话,那么它的效用就有所下降了。下图显示了一个wxPython列表框。 在wxPython中,列表框是类wx.ListBox的元素。该类的方法使你能够处理列表中的选择。 如何...
  • 在Listbox中默认显示10行,如果要显示10行之外的内容需要设置其height属性,但这是已知行数的情况。大多数情况下需要为Listbox添加一个滚动条。...这个方法是属性的一个内置方法可以做到列表内容随滚动条变化。 代码...
  • 完全搞定iframe(框架)里的滚动条!(一) 说明:1、本文参考了网络上大量资料,本人在此深表感谢!2、本文假设读者,有一定的HTML、CSS、JS基础。3、本文讨论的目标是,通过A页面里
  • 为select选择增加滚动条

    万次阅读 2016-10-18 11:02:41
    当下拉菜单选项比较多的时候,select下拉列表在IE中默认是30条选项,firefox默认是20条, 超过自动出现滚动条。效果如下图:
  • 显示链接列表框

    2012-11-13 15:31:01
    1 按钮实现Ctrl+C,复制功能; 2 在edit box相应回车功能,在列表框里实现查找; 3 实现滚动条滚动,分部加载列表里的信息;

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 63,807
精华内容 25,522
关键字:

列表框的滚动条怎么显示