精华内容
下载资源
问答
  • 列表框的list属性
    千次阅读
    2021-06-10 17:17:36

    Φ是什么意思?读"fai".是直径的意思不?

    “Φ”是数学中表示圆的直径的希腊字母。 “Φ”是希腊字母中的一个,读作fai,其写法分为两种,大写:Φ,小写:φ,小写时左上角的弯是开口的;而用作

    列表框和组合框有没有select属性

    4c9bc99dde5846b4eccc572c8d01b153.png

    列表框有selected,表示是否选中:If List1.Selected(i) Then 组合框只允许选一个,没有select,Combo1.ListIndex即为当前选中的项

    html 里select 下拉列表中设置默认值怎么写

    &nbsp设置下拉列表框的默认值:使用关键字selected < select name = "pronvince"> < option value ="SH">上海 < option value ="BJ">北京 < option value ="JS">江苏 < option value ="HB" selected="selected">湖北 < option value ="ZJ">浙江 如果希

    怎样用js取得select下拉列表框内选中的option的val1

    急vb里,列表框有list ,selected,text,listcou...想请教VB里的高手,至少比我强的 我一直不怎么会LISTBOX的代码编写 谢啦。list 返回某一项的内容,如 print list1.list(0) selected 判断某项是否被选定 text 返回某一项的内容 一般用于list1_click中 listcount 返回list中一共有多少项 参考。。

    html中下拉列表框中的全部属性

    1.下拉框当前选中项目 obj.selectedIndex 2.下拉框项目数 obj.length 3.下拉框第N项的值 obj.options[N-1].value 4.下拉框第N项的“描述值” obj.options[N-1].text 5.选中第N项 obj.options[N-1].selected = true; =false;即为不选中 6.在末尾增

    ligerui list getselecteditems列表框怎么获取到选问1:在action里写Xname的getset方法只3,要action被触发,jsp页面上的select就把选中的值传到Xname里了。注意里存的是一个Map类型的一个key对应一个value。key和value在后台都是能够拿到的具体用哪个标签看一下struts2的文档,很详细。

    如何判断asp中下拉列表框是选的那个选项

    大米是5.6黄豆是6.3 如何在第一个选择之后 ,线面的菜单直接显示??

    asp下拉列表框怎么实现在asp当中如果选择了一个列表框中的值后,当比如在同一页中按了我可以给你思路,具体代码你自己写:

    添加一个INPUT,类型为HIDDEN,目标action为当前页。

    添加JAVASCRIPT代码,事件为列表框onchange,将选定value赋值给HIDDEN.

    同一页面最上面添加表单的提取代码

    紧急CSS布局HTML小编今天和大家分享助:jsp提交表单查询后,下拉列表框(SELECT我想在提交包含班级和学生和学期查询条件的表单(form)后,由struts处建议你试一试strust 标签

    更多相关内容
  • 第14章 列表框(Listbox) 列表框控件显示多行文本,用户可以选中一行或者多行。所有的文本只能使用一种字体,不能混合使用多种字体。

    第14章 列表框(Listbox)
    列表框控件显示多行文本,用户可以选中一行或者多行。所有的文本只能使用一种字体,不能混合使用多种字体。
    14.1 属性
    常用的参数列表如下:

    属性描述
    activestyle被选中的文本的样式:
    underline: 下划线
    dotbox:点划线框
    none: 没有任何的样式
    background
    bg
    背景颜色。默认是系统指定颜色
    borderwidth
    bd
    边框宽度。一般是1~2个像素值。
    cursor当鼠标移动经过列表框的时候,显示的光标样式
    disabledforeground列表框被禁止使用的时候的背景颜色
    exportselection默认是1。
    font列表框中文字的字体。只能选择一种字体显示。
    foreground
    fg 列表框中文字的颜色
    height设置列表框的高度。默认值是10。
    highlightbackground当列表框失去焦点的时候,边框的高亮颜色
    highlightcolor当列表框获得焦点的时候,边框的高亮颜色
    highlightthickness设置高亮边框的宽度
    listvariable设置listvariable属性
    relief边框的美化效果。默认值是SUNKEN,其他的可选项包括:FLAT, RAISED, GROOVE, and RIDGE
    selectbackground选中的条目背景颜色
    selectborderwidth选中的条目,会用一个虚线的矩形框住。此参数定义矩形边框的宽度。默认值是1。
    selectforeground选中条目的文本颜色
    selectmode选择模式:
    MULTIPLE为多选
    BROWSE:通过鼠标的移动选择
    SINGLE:只能选一行。鼠标不能拖动选择。
    EXTENDED:shift和ctrl配合使用
    takefocus标识用户是否能够使用Tab键移动焦点到标签上。默认是空字符串,也就是只有使用热键才能选中该按钮。
    state标签的状态,包括:NORMAL或者 DISABLED
    width设置列表框的宽度。默认值为20
    xscrollcommand与滚动条组件相关联(水平方向).使用方法可以参考:Scrollbar 组件
    yscrollcommand与滚动条组件相关联(垂直方向).使用方法可以参考:Scrollbar 组件
    14.1.1 activestyle
    设置列表框被选中的文本行的显示效果。有三种:
    underline: 下划线
    dotbox:点划线虚框
    none: 没有显示效果
    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    b1=tk.Listbox(root,activestyle='dotbox')
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    root.mainloop()
    

    结果:
    在这里插入图片描述
    14.1.2 background(bg)
    设置列表框背景颜色。

    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    b1=tk.Listbox(root,bg='green')
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    root.mainloop()
    

    结果:
    在这里插入图片描述
    14.1.3 borderwidth(bd)
    设置列表框的边框宽度。

    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    b1=tk.Listbox(root,bd=10)
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    root.mainloop()
    

    结果:
    在这里插入图片描述
    14.1.4 cursor
    鼠标位于列表框区域时,鼠标的形状。详细的cursor说明见3.3.6节。

    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    b1=tk.Listbox(root,cursor='spider')
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    root.mainloop()
    

    14.1.5 disabledforeground
    列表框的状态为tk.DISABLED时,列表框的文本颜色。

    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    b1=tk.Listbox(root,disabledforeground='red')
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    b1.config(state=tk.DISABLED)
    root.mainloop()
    

    结果:
    在这里插入图片描述
    14.1.6 exportselection
    决定是否可以复制选中的文本内容。如果exportselection=True,表示可以。exportselection=False,表示不可复制列表框中选中的选项。

    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    
    b1=tk.Listbox(root,exportselection=0)
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    root.mainloop()
    

    14.1.7 font
    设置列表框字体。所有的文本只能有一种字体,不能混合多种字体。具体的文本说明见3.3.3节。
    14.1.8 foreground(fg)
    设置列表框中的文本颜色。

    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    b1=tk.Listbox(root,fg='blue')
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    root.mainloop()
    

    结果:
    在这里插入图片描述
    14.1.9 height
    设置列表框的高度。单位是行。

    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    b1=tk.Listbox(root,height=5)
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    root.mainloop()
    

    结果:
    在这里插入图片描述
    设置列表框的高度。默认是10行。
    14.1.10 highlightbackground、highlightcolor和highlightthickness
    设置列表框获得或者失去输入焦点时候的边框颜色。这两种边框的宽度由highlightthickness设置。

    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    
    b1=tk.Listbox(root,highlightbackground='blue',
                  highlightcolor='red',highlightthickness=10)
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    
    root.mainloop()
    

    结果:
    在这里插入图片描述
    在这里插入图片描述
    14.1.11 listvariable
    listvariable 可以与一个tk.StringVar()变量相关联。可以通过变量的get()方法,获得列表框中的所有的文本内容。也可以通过set(s)的方法来设置列表框中的内容。

    #获得列表框的内容
    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    content=tk.StringVar()
    b1=tk.Listbox(root,listvariable=content)
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    print(content.get())
    root.mainloop()
    
    #设置列表框中的内容
    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    content=tk.StringVar()
    b1=tk.Listbox(root,listvariable=content)
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    def lst():
        content.set('abc def "c c"     c bbb')
    b2=tk.Button(root,text='Set',command=lst)
    b2.pack()
    root.mainloop()
    

    结果:
    在这里插入图片描述
    说明:
    (1)使用set(s)会取代以前的列表框中的内容
    (2)s是用空格分隔的字符串。多个空格会被认为是1个。如果选项中需要有空格,请用引号把这个字符串括起来。比如”c c”。
    14.1.12 relief
    设置列表框边框的3D效果。见3.3.5节的说明
    14.1.13 selectbackground
    选中条目的背景颜色。默认值是蓝色。

    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    b1=tk.Listbox(root,selectbackground='red')
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    root.mainloop()
    

    结果:
    在这里插入图片描述
    14.1.14 selectborderwidth
    表示选中的矩形的边框宽度。

    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    b1=tk.Listbox(root,selectborderwidth=5)
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    root.mainloop()
    

    结果:
    在这里插入图片描述
    说明:可以看到间距明显比不设置selectborderwidth加大了。
    14.1.15 selectforeground
    选中后的文本颜色。目前是反白的显示,也可以通过selectforeground来设定。

    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    b1=tk.Listbox(root,selectforeground='red')
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    root.mainloop()
    

    结果:
    在这里插入图片描述
    14.1.16 selectmode
    设定列表框中条目的选择模式:
    (1)tk.BROWSE: 可以通过鼠标拖动的方式选择条目。一次只能选中一行
    (2)tk.SINGLE: 一次只能选中一个条目。不支持鼠标拖动模式选择。
    (3)tk.MULTIPLE: 可以选择多个条目。如果该条目已经选中,再次点击变为未选中
    (4)tk.EXTENDED :支持使用如下模式选择:
    拖动选择。鼠标拖动,在鼠标经过的条目都被选中
    Shift:先鼠标点击选中一个条目,然后按照shift键,鼠标点击另外的条目,则这2个条目之间的所有条目都被选中
    Ctrl: 按住ctrl键,同时点击一个条目,则该条目被选中。一次只能增加一个被选中的条目。如果该条目已经被选中,则状体变为未选中。

    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    
    b1=tk.Listbox(root,selectmode=tk.SINGLE)
    for i in range(1,11):
        b1.insert(tk.END,i)
    b1.pack()
    root.mainloop()
    

    14.1.17 takefocus
    设置是否可以通过Tab移动输入焦点到列表框上。
    14.1.18 state
    设置列表框的状态。有二种:DISABLED或者NORMAL。
    14.1.19 width
    设置列表框的宽度。默认是20个字符。
    14.1.20 xscrollcommand
    设置水平滚动条。详细的用法见yscrollcommand。
    14.1.21 yscrollcommand
    设置垂直滚动条。

    import tkinter as tk
    root=tk.Tk()
    root.geometry('300x240')
    
    content=tk.StringVar()
    content.set('1 2 3 jjjjjjjjjjjjjjjjjjjjjjjjjjj\
    jjjjjjjjjjjjjj 4 5 6 7 8 9 10')
    f=tk.Frame(root)
    s1 = tk.Scrollbar(f,orient=tk.HORIZONTAL)  
    s2 = tk.Scrollbar(f,orient=tk.VERTICAL)  
    b1 = tk.Listbox(f,width=10,height=5,listvariable=content,
                    xscrollcommand=s1.set,yscrollcommand=s2.set)
    s1.pack(side=tk.BOTTOM,fill=tk.X) 
    s1.config(command=b1.xview)
    s2.pack(side=tk.RIGHT,fill=tk.Y) 
    s2.config(command=b1.yview)
    b1.pack()
    f.pack()
    root.mainloop()
    

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

    展开全文
  • 列表框控件(ListBox)的常用属性 属性 说明 (Name) 列表框控件的名称 Appearance 是否用立体效果绘制,取值为:0 平面 1 3D(立体) BackColor 设置背景颜色,可从弹出的调色板选择。 该控件获得焦点时,失去焦点的控件...

    💗 大家好🤗🤗🤗,我是左手の明天!💗

    📆  最近更新:2022 年 5 月 24 日,左手の明天的第 244 篇原创博客

    📚 更新于专栏:Matlab GUI编程技巧


    目录

    🚩listbox控件用法和属性

    🚩 回调函数

    🚩添加/删除列表框中的项目

    ⭐️删除ListBox的某一项

    ⭐️添加ListBox的某一项

    ⭐️删除“空”项中的simpliest办法

    🚩listbox读取/添加不重复数据

    ⭐️读取数据

    ⭐️写入数据

    🚩创建列表框组件:uilistbox

    ⭐️语法

    ⭐️输入参数

    parent - 父容器

    Value - 值

    Items - 列表框项目

    ItemsData - 与 Items 属性值的每个元素关联的数据

    Multiselect - 多项目选择

    ValueChangedFcn - 值更改函数

    Position - 列表框的位置和大小

    ⭐️创建列表框

    ⭐️设置和访问列表框属性值 

    ⭐️显示列表框选项

    ⭐️显示列表框数据

    ⭐️允许选择多个项目的列表框


    🚩listbox控件用法和属性

    列表框是一种 UI 组件,用于显示列表中的项目。可通过属性控制列表框的外观和行为。使用圆点表示法引用特定的对象和属性:

    fig = uifigure;
    list = uilistbox(fig);
    list.Items = {'Red','Green','Blue'};

    属性列表:

    • Value - 值
    • Items - 列表框项目
    • ItemsData - 与 Items 属性值的每个元素关联的数据
    • FontName - 字体名称
    • FontSize - 字体大小
    • FontWeight - 字体粗细

    字体粗细,指定为下列值之一:

    1.  'normal' - 特定字体定义的默认粗细
    2. 'bold' - 字符轮廓比 'normal' 粗 并非所有字体都有加粗字体。对于非加粗字体,指定 'bold' 会得到普通字体。

    • FontAngle - 字体角度

    字体角度,指定为 'normal' 或 'italic'。并非所有字体都有倾斜字体角度。对于无斜体字体,指定 'italic' 后会使用常规字体角度。

    • FontColor - 字体颜色

    字体颜色,指定为 RGB 三元组、十六进制颜色代码或下表中列出的选项之一。

    RGB 三元组和十六进制颜色代码对于指定自定义颜色非常有用。

    1.  RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于 [0,1] 范围内,例如 [0.4 0.6 0.7]
    2. 十六进制颜色代码是字符向量或字符串标量,以井号 (#) 开头,后跟三个或六个十六进制数字,范围可以是 0 到 F。这些值不区分大小写。因此,颜色代码   '#FF8800'   与   '#ff8800''#F80' 与 '#f80' 是等效的。

     下表列出了命名颜色选项、等效 RGB 三元组和十六进制颜色代码。

    颜色名称短名称RGB 三元组十六进制颜色代码
    'red''r'[1 0 0]'#FF0000'
    'green''g'[0 1 0]'#00FF00'
    'blue''b'[0 0 1]'#0000FF'
    'cyan''c'[0 1 1]'#00FFFF'
    'magenta''m'[1 0 1]'#FF00FF'
    'yellow''y'[1 1 0]'#FFFF00'
    'black''k'[0 0 0]'#000000'
    'white''w'[1 1 1]'#FFFFFF'
    • BackgroundColor - 背景色
    • Visible - 可见性状态

    可见性状态,指定为 'on' 或 'off',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true'off' 等效于 false

    1.  'on' - 显示对象。
    2.  'off' - 隐藏对象而不删除它。您仍然可以访问不可见 UI 组件的属性。
    •  Multiselect - 多项目选择
    • Enable - 工作状态
    • ContextMenu - 上下文菜单
    • Position - 列表框的位置和大小
    • InnerPosition - 列表框的内部位置和大小
    • OuterPosition - 列表框的外部位置和大小
    • Layout - 布局选项

    布局选项,指定为 GridLayoutOptions 对象。此属性为网格布局容器的子级组件指定选项。如果组件不是网格布局容器的子级(例如,它是图窗或面板的子级),则此属性为空且不起作用。但是,如果组件是网格布局容器的子级,则可以通过在 GridLayoutOptions 对象上设置 Row 和 Column 属性,将组件放置在网格的所需行和列中。

    例如,以下代码将一个列表框放置在其父网格的第三行第二列中。

    g = uigridlayout([4 3]);
    list = uilistbox(g);
    list.Layout.Row = 3;
    list.Layout.Column = 2;

    要使该列表框跨多个行或列,请将 Row 或 Column 属性指定为二元素向量。例如,此列表框跨列 2 到 3

    list.Layout.Column = [2 3];
    • Type - 图形对象的类型
    • Tag - 对象标识符
    • UserData - 用户数据

    🚩 回调函数

    (1)Callback - 用户与控件交互时执行的回调函数

    Note:''(默认) | 函数句柄 | 元胞数组 | 字符串

    此函数使控件响应用户输入,例如按钮点击、滑动条移动或复选框选中。

    (2)CreateFcn - 控件创建函数

    Note:函数句柄 | 元胞数组 | 字符串

    该属性指定要在 MATLAB 创建 uicontrol 时执行的回调函数。MATLAB 在执行 CreateFcn 回调之前初始化所有的控件属性值。如果不指定 CreateFcn 属性,则 MATLAB 执行默认的创建函数。

    CreateFcn 代码中使用 [gcbo] 函数可以获得创建的控件的句柄。

    对现有控件设置 CreateFcn 属性没有任何作用。

    (3)DeleteFcn - 控件删除函数

    Note:函数句柄 | 元胞数组 | 字符串

    DeleteFcn 属性指定要在 MATLAB 删除控件时(例如,最终用户删除图形时)执行的回调函数。MATLAB 在销毁控件的属性之前执行 DeleteFcn 回调。如果不指定 DeleteFcn 属性,则 MATLAB 执行默认的删除函数。

    在 DeleteFcn 代码中使用 gcbo 函数以获得删除的控件的句柄。

    (4)ValueChangedFcn - 值更改函数

    当用户从列表框中选择不同的项目时,将会执行此回调函数。如果以编程方式更改 Value 属性设置,将不会执行此回调函数。

    此回调函数可以访问有关用户与列表框的交互的特定信息。MATLAB 将 ValueChangedData 对象中的此信息作为第二个参数传递给回调函数。在 App 设计工具中,该参数名为 event。您可以使用圆点表示法查询对象属性。例如,event.PreviousValue 返回列表框的上一个值。ValueChangedData 对象不可用于指定为字符向量的回调函数。

    下表列出了 ValueChangedData 对象的属性。

    属性
    Value列表框在 App 用户最近一次与它交互之后的值
    PreviousValue列表框在 App 用户最近一次与它交互之前的值
    Source执行回调的组件
    EventName'ValueChanged'

    🚩添加/删除列表框中的项目

    实现的功能

    matlab中尝试创建一个列表框,可以动态添加或删除项目

    需要用到listboxhandle,可以用findobj来获得

    hMyListBox = findobj('type', 'listbos'); %如果你的GUI上只有一个listbox的话

    ⭐️删除ListBox的某一项

    oldString = get(hMyListBox, 'String'); 
    curPos = get(hMyListBox, 'Value'); 
    oldString(curPos) = []; 
    set(hMyListBox, 'String', oldString);

    当然也可以通过以下方式实现:

    n=get(handles.listbox,'value'); %获取选中的行号
    str=get(handles.listbox,'string'); %获取列表中的所有数据
    m=size(str1,1);
    k=0;
    for i=1:m
        for j=1:size(n,2)
            if(i~=n(j))
                k=k+1;
                str1(k,:)=str(i,:);
            end
        end
    end
    set(handles.listbox,'string',str1);

    ⭐️添加ListBox的某一项

    newItem={'This is a new string'}; 
    oldString = get(hMyListBox, 'String'); 
    curPos = get(hMyListBox, 'Value'); 
    numStrings = length(oldString); 
    newString = {oldString(1:curPos) newItem oldString(curPos:numStrings)}; 
    set(hMyListBox, 'String', newString);

    ⭐️删除“空”项中的simpliest办法

    删除“空”项中的simpliest办法就是更新listbox字符串与remainig项目。

    有三种可能性:

    • 第一个元素已被删除:新列表将为upd_list={existingItems{2:end}}
    • 最后一个元素已被删除:新列表将为upd_list={existingItems{1:end-1}}
    • ans中间元素已被删除:新列表将为upd_list={existingItems{1:selectedId-1} existingItems{selectedId+1:end}}

    还可以检查列表的所有元素都被删除,在这种情况下,禁用“删除”pushbutton;在这种情况下,您必须在“添加”callback中启用它。

    btnDeleteLabel_Callback相关代码可以为如下:

    % --- Executes on button press in btnDeleteLabel. 
    function btnDeleteLabel_Callback(hObject, eventdata, handles) 
    % hObject handle to btnDeleteLabel (see GCBO) 
    % eventdata reserved - to be defined in a future version of MATLAB 
    % handles structure with handles and user data (see GUIDATA) 
    
    selectedId = get(handles.listbox_labels, 'Value')  % get id of selectedLabelName 
    existingItems = get(handles.listbox_labels, 'String') % get current listbox list 
    % 
    % It is not necessary 
    % 
    % existingItems{selectedId} = []     % delete the id 
    
    % Identify the items: if in the list only one ites has been added the 
    % returned list is a char array 
    if(class(existingItems) == 'char') 
        upd_list='' 
        set(handles.listbox_labels, 'String', upd_list) 
    else 
        % If the returned list is a cell array there are three cases 
        n_items=length(existingItems) 
        if(selectedId == 1) 
         % The first element has been selected 
         upd_list={existingItems{2:end}} 
        elseif(selectedId == n_items) 
         % The last element has been selected 
         upd_list={existingItems{1:end-1}} 
         % Set the "Value" property to the previous element 
         set(handles.listbox_labels, 'Value', selectedId-1) 
        else 
         % And element in the list has been selected 
         upd_list={existingItems{1:selectedId-1} existingItems{selectedId+1:end}} 
        end 
    end 
    % Update the list 
    set(handles.listbox_labels, 'String', upd_list)  % restore cropped version of label list 
    
    % Disable the delete pushbutton if there are no more items 
    existingItems = get(handles.listbox_labels, 'String') 
    if(isempty(existingItems)) 
        handles.btnDeleteLabel.Enable='off' 
    end 

    🚩listbox读取/添加不重复数据

    ⭐️读取数据

    • 如果列表只有1个数据,则读取格式为char;
    • 如果列表有多于1个数据,则读取格式为cell;

    因此,为了统一,使用了str to cell转换函数cellstr()

    print_list = cellstr(get(handles.listbox2,'string'));

    ⭐️写入数据

    将new_print_list写入listbox中

    set(handles.listbox,'string',new_print_list);

    缺陷:以上方式会清空原来listbox中的数据,直接用new_print_list覆盖。

    如果想要保留原来listbox中的数据,而且满足 “如果新数据已经在列表中,则忽略;否则就加到列表中”,那么可以改为以下代码:

    % 先读取原list中的数据
    print_list = cellstr(get(handles.listbox,'string'));
    
    % 如果new_print_list是新数据,则加入列表;否则不加入
    if ~strcmp(cur_str, print_list)
    	new_print_list = [print_list; cellstr(cur_str)];
    	set(handles.listbox,'string',new_print_list);
    end

    🚩创建列表框组件:uilistbox

    ⭐️语法

    • lb = uilistbox :在新图窗窗口中创建一个列表框,并返回 ListBox 对象。
    • lb = uilistbox(parent) :在指定的父容器中创建列表框。父容器可以是使用uifigure函数创建的 Figure 或其子容器之一。
    • lb = uilistbox(___,Name,Value) :使用一个或多个 Name,Value 对组参数指定 ListBox 属性。

    ⭐️输入参数

    parent - 父容器

    指定为使用 uifigure 函数创建的 Figure 对象或其子容器之一:TabPanelButtonGroup 或 GridLayout。如果不指定父容器,MATLAB 会调用 uifigure 函数创建新 Figure 对象充当父容器。

    Value - 值

    指定为 Items 数组或 ItemsData 数组的元素,或指定为空元胞数组。默认情况下,Value 是 Items 中的第一个元素。

    要不指定任何选择,请将 Value 设置为空元胞数组。

    将 Value 指定为 Items 的元素,即可选择与该元素匹配的列表项。如果 ItemsData 非空,则 Value 必须设置为 ItemsData 的元素,而列表框将选中列表中的关联项目。

    Items - 列表框项目

    指定为字符向量元胞数组、字符串数组或一维分类数组。允许重复的元素。列表框显示的选项与 Items 数组中的元素数量一样多。如果将此属性指定为分类数组,MATLAB 将使用数组中的值,而不是完整的类别集。

    ItemsData - 与 Items 属性值的每个元素关联的数据

    与 Items 属性值的每个元素关联的数据,指定为 1×n 数值数组或 1×n 元胞数组。允许重复的元素。

    例如,如果您将 Items 值设置为员工姓名,则可以将 ItemsData 值设置为对应的员工 ID 号。ItemsData 值对 App 用户不可见。

    如果 ItemsData 值和 Items 值中的数组元素数量不匹配,将发生以下情况之一:

    • 如果 ItemsData 值为空,则 Items 值的所有元素都呈现给 App 用户。

    • 如果 ItemsData 值中的元素数大于 Items 值,则 Items 值的所有元素都呈现给 App 用户。MATLAB 将忽略多余的 ItemsData 元素。

    • 如果 ItemsData 值非空,但元素数少于 Items 值,只将在 ItemsData 值中具有对应元素的 Items 值的元素呈现给 App 用户。

    示例: {'One','Two','Three'}

    示例: [10 20 30 40]

    Multiselect - 多项目选择

    多项目选择,指定为 'off' 或 'on',或者指定为数值或逻辑值 1 (true) 或 0 (false)。值 'on' 等效于 true'off' 等效于 false。因此,您可以使用此属性的值作为逻辑值。

    ValueChangedFcn - 值更改函数

    当用户从列表框中选择不同的项目时,将会执行此回调函数。如果以编程方式更改 Value 属性设置,将不会执行此回调函数。

    此回调函数可以访问有关用户与列表框的交互的特定信息。MATLAB 将 ValueChangedData 对象中的此信息作为第二个参数传递给回调函数。在 App 设计工具中,该参数名为 event。您可以使用圆点表示法查询对象属性。例如,event.PreviousValue 返回列表框的上一个值。ValueChangedData 对象不可用于指定为字符向量的回调函数。

    下表列出了 ValueChangedData 对象的属性。

    属性
    Value列表框在 App 用户最近一次与它交互之后的值
    PreviousValue列表框在 App 用户最近一次与它交互之前的值
    Source执行回调的组件
    EventName'ValueChanged'

    Position - 列表框的位置和大小

    列表框相对于父容器的位置和大小,指定为向量 [left bottom width height]。下表介绍该向量中的每个元素。

    元素说明
    left父容器的内部左边缘与列表框的外部左边缘之间的距离
    bottom父容器的内部下边缘与列表框的外部下边缘之间的距离
    width列表框的左右外部边缘之间的距离
    height列表框的上下外部边缘之间的距离

    所有测量值都以像素为单位。

    Position 值相对于父容器的可绘制区域。可绘制区域是指容器边框内的区域,不包括装饰元素(如菜单栏或标题)所占的区域。

    示例: [100 100 100 200]

    ⭐️创建列表框

    在图窗窗口中创建一个列表框。

    fig = uifigure('Position', [100 100 300 250]);
    lbx = uilistbox(fig);

    ⭐️设置和访问列表框属性值 

    创建一个列表框。

    fig = uifigure;
    lbx = uilistbox(fig);

    确定列表框是否允许多选。

    multi = lbx.Multiselect
    
    multi =
    
         off

    允许多选。

    lbx.Multiselect = 'on';

    ⭐️显示列表框选项

    创建一个列表框,以便在用户选择列表中的某个项目时执行相应操作。

    将以下代码以 selectlistbox.m 文件保存到 MATLAB 路径上。

    此代码将创建一个 App,其中包含一个列表框和一个文本区域。ValueChangedFcn 回调将更新文本区域以显示列表框选项。

    function selectlistbox
    
    fig = uifigure('Position',[100 100 350 275]);
    
    % Create text area
    txt = uitextarea(fig,...
        'Position',[125 90 100 22],...
        'Value','First');
    
    % Create list box
    lbox = uilistbox(fig,...
        'Position',[125 120 100 78],...
        'Items',{'First','Second','Third'},... 
        'ValueChangedFcn', @updateEditField); 
    
    % ValueChangedFcn callback
    function updateEditField(src,event) 
        txt.Value = src.Value;
    end
    
    end

    运行 selectlistbox 并从列表中选择一个选项。

    ⭐️显示列表框数据

    创建一个列表框,其中的每个项目都有关联的数值。当用户选择列表框中的项目时,编辑字段将显示关联的数值。

    将以下代码以 dataselection.m 文件保存到 MATLAB 路径上。此代码将创建一个 App,其中包含一个列表框和一个数值编辑字段。列表中的每一项都有与其关联的温度。当用户选择列表中的项目时,ValueChangedFcn 回调将在编辑字段中显示相应的温度。

    function dataselection
    fig = uifigure('Position',[100 100 350 275]);
    
    % Create Numeric Edit Field
    ef = uieditfield(fig,'numeric',...
        'Position',[125 90 100 22]);
    
    % Create List Box
    lbox = uilistbox(fig,...
        'Items', {'Freezing', 'Warm', 'Hot', 'Boiling'},...
        'ItemsData', [0, 25, 40, 100],...
        'Position',[125 120 100 78],...
        'ValueChangedFcn', @selectionChanged);
    
    % ValueChangedFcn callback
    function selectionChanged(src,event)
        % Display list box data in edit field
        ef.Value = src.Value;
    end
    
    end

    运行 dataselection 并选择列表中的项目。数值编辑字段将更新以反映与所选项相关联的温度。

    ⭐️允许选择多个项目的列表框 

    创建一个 App,其中包含一个列表框,允许选择多个项目。编写 ValueChangedFcn 回调以便在列表框下方的文本区域中显示所选项。

    将以下代码以 multiselect.m 文件保存到 MATLAB 路径上。

    function multiselect
    fig = uifigure('Position',[100 100 350 275]);
    
    % Create Text Area
    txt = uitextarea(fig,...
        'Position',[125 80 100 50]);
    
    % Create List Box
    lbox = uilistbox(fig,...
        'Position',[125 150 100 78],...
        'Multiselect','on',...
        'ValueChangedFcn',@selectionChanged);
    
    % ValueChangedFcn callback
    function selectionChanged(src,event)
        txt.Value = src.Value;
    end
    
    end

    运行 multiselect,然后从列表中选择项目。文本区域显示您选择的内容。


    🌟全文共9567个字,码字总结不易,老铁们来个三连:点赞、关注、评论🌟

    🌟作者:左手の明天🌟

    🌟原创不易,转载请联系作者并注明出处🌟

    展开全文
  • 易语言EXDUI属性框

    2020-07-15 01:49:15
    易语言EXDUI属性框源码,EXDUI属性框,组件消息,挂接_按钮被单击,挂接_自绘接口,挂接_列表被选择,挂接_项目即将被单击,挂接_项目已经被单击,内_附_组件创建,内_附_组件消息回调,内_附_列表单击,内_附_滚动条位置,List_...
  • 16.3 组合框与列表框;组合框也称为选择列表(choice list)或是下拉列表(drop-down list),它包含一个条目列表,用户能从中进行选择。 属性:都是从JComponent等父辈继承来的。 构造方法与一般方法: JComboBox() ...
  • mfc 列表框行颜色设置方法

    千次阅读 2019-09-11 14:04:15
    指定改变CListCtrl中某一行的颜色,比如说刚添加进去的一行,让它改变颜色,这样记录多了,容易看到自己刚刚加入的行,方便操作可查看,也可以让添加和...新建一个mfc 对话框工程,并添加列表框控件,添加一些数据...

    指定改变CListCtrl中某一行的颜色,比如说刚添加进去的一行,让它改变颜色,这样记录多了,容易看到自己刚刚加入的行,方便操作可查看,也可以让添加和修改的记录显示不一样的颜色,方便的多了,VC自带的没有这种功能。

    虽然说自带没有这个功能,但可以用NU_CUSTOMDRAW

    我的环境是vc2010, 听说vc6 没有,需要手动添加。

    新建一个mfc 对话框工程,并添加列表框控件,添加一些数据,让他能正常显示一个列表框的表格。这个时候还不能设置行颜色。

    添加改变颜色的事件

    打开MFC Class Wizard ,用如下方式添加列表框(我的是IDC_LIST2)的NU_CUSTOMDRAW事件,

    然后把代码加入如下: 

    void CListCtrlTestDlg::OnCustomdrawList2(NMHDR *pNMHDR, LRESULT *pResult)
    {
    	//LPNMCUSTOMDRAW pNMCD = reinterpret_cast<LPNMCUSTOMDRAW>(pNMHDR);
    	// TODO: Add your control notification handler code here
    	//pNMCD->clrTextBk = RGB(51, 153, 255);
    	//pNMCD->clrText = RGB(255, 255, 255);
    	//*pResult = 0;
    
    	LPNMLVCUSTOMDRAW  lplvcd = (LPNMLVCUSTOMDRAW)pNMHDR;
        *pResult = 0;
    	//return ;
    
    switch(lplvcd->nmcd.dwDrawStage)
    {
    	case CDDS_PREPAINT :
    		*pResult = CDRF_NOTIFYITEMDRAW;
    		break;
    	case CDDS_ITEMPREPAINT:
    		*pResult =CDRF_NOTIFYSUBITEMDRAW;
    	break;
    	case CDDS_SUBITEM | CDDS_ITEMPREPAINT:
    		if(lplvcd->nmcd.dwItemSpec==0)
    		{
    		lplvcd->clrTextBk = RGB(255,0,0); //红色
    		}
    		if(lplvcd->nmcd.dwItemSpec==1)
    		{
    		lplvcd->clrTextBk = RGB(0,255,0); //绿色
    		}
    		if(lplvcd->nmcd.dwItemSpec==2)
    		{
    		lplvcd->clrTextBk = RGB(0,0,255); //蓝色
    		}
    		if(lplvcd->nmcd.dwItemSpec==3)
    		{
    		lplvcd->clrTextBk = RGB(255,255,0); //黄色
    		}
    		if(lplvcd->nmcd.dwItemSpec==4)
    		{
    		lplvcd->clrTextBk = RGB(160,32,240); //紫色
    		}
    		if(lplvcd->nmcd.dwItemSpec==5)
    		{
    		lplvcd->clrTextBk = RGB(0,255,255); //青色
    		}
    		if(lplvcd->nmcd.dwItemSpec==6)
    		{
    		lplvcd->clrTextBk = RGB(255,97,0); //橙色
    		}
    		if(lplvcd->nmcd.dwItemSpec==7)
    		{
    		lplvcd->clrTextBk = RGB(0,255,127); //嫩绿色
    		}
    		if((lplvcd->nmcd.dwItemSpec)>7)
    		{
    		lplvcd->clrTextBk = RGB(0,0,0); //黑色
    		}
    		*pResult = CDRF_NEWFONT;
    		break;
    	}
    
    }
    

    编译运行结果如下:

    代码解说:

    开始我看到一文,事件产生的代码如下:

        LPNMCUSTOMDRAW pNMCD = reinterpret_cast<LPNMCUSTOMDRAW>(pNMHDR);
        // TODO: Add your control notification handler code here

    后面好像会报错,改为文章代码才好,这个代码是别人用vc6 做的。

    更多属性可以看微软的内容介绍:

    https://docs.microsoft.com/zh-cn/windows/win32/api/commctrl/ns-commctrl-nmlvcustomdraw?redirectedfrom=MSDN

    这个代码只是设置0,1,2,3,4,5,6,7行的颜色,其他行都为黑色。当然只是演示功能的需要。

    这里customdraw有几个阶段。

    switch(lplvcd->nmcd.dwDrawStage) 就是判断阶段,只是在

    case CDDS_SUBITEM | CDDS_ITEMPREPAINT:  才设置背景颜色。

    其他阶段不要做。

    展开全文
  • MFC--列表框

    千次阅读 2021-11-12 09:44:26
    添加列表框控件 添加列表框选项 添加消息 添加变量 编辑消息 BOOL CMydlg::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here m_list.AddString("苹果"); m_...
  • 列表框和组合框的区别是什么?

    千次阅读 2021-06-10 17:17:14
    列表框和组合框的区别1、自动排序方式不同:当列表框不能同时显示所有项目的时候,将自动添加滚动条,使用户可以滚动查阅所有选项。组合框的风格取值定义了组合框的具体属性,包括是否自动排序,是否有滚动条。2、...
  • C# ListBox:列表框控件

    千次阅读 2019-06-11 22:26:10
    列表框中常用属性列表框还提供了一些方法来操作列表框中的选项,由于列表框中的选项是一个集合形式的, 列表项的操作都是用 Items 属性进行的。 例如Items.Add方法用于向列表框中添加项,...
  • 组合框和列表框都可以在界面上同时显示多项内容,并且允许用户选中其中的某项内容,列表框还允许同时选择多项。这两种控件的使用,有很多相似之处;2.3.1 技术要点: Windows 中预先定义了一系列“CB_ ”开头的消息...
  • List 属性List = 对象List.stream().map(对象::get方法()).collect(Collectors.toList());例如:List idList = list.stream().map(User::getId).collect(Collectors.toList());//或者List idList = list.stream()....
  • 列表的样式在CSS中,列表元素是一个块列表中的每个表项也是一个块,只是在表项前面多了一个项目符号。列表的格式化,主要由浏览器完成,而不是由设计人员完成。设计人员只能通过 list-style属性来定义列表的...
  • vb列表框ListBox的详细使用方法

    万次阅读 2018-06-12 15:19:45
    列表框(ListBox)控件表示一个选项清单,用户可能用鼠标选择其中一个或者几个选项。 列表框的特点是:列表框中的项目是通过程序插入到其中的,用户无法向清单中输入数据,当选择其中的项
  • LabVIEW多列列表框简单玩法

    千次阅读 2022-04-15 22:22:46
    多列列表框简单玩法
  • 微信公众号原文 系统:Windows 7 软件:Excel 2010 / Access 2010 这个系列介绍常用的控件 包括在界面端的设置及在代码端的实现 ...列表框支持多选(属性表-其他-多重选择-展开的),本文目标在于...
  • VB 列表框的应用实例

    2011-05-11 15:49:58
    这个是关于列表框的应用例子,比较简单,涉及到列表框list、text、listindex属性、additem、removeitem、clear方法、例子比较简单,适合初学者。
  • Qt QListWidget列表框用法详解

    千次阅读 2022-01-25 13:30:02
    Qt QListWidget列表框用法详解 很多应用程序中需要以列表的形式向用户展示数据(资源),比如 Windows 操作系统会以列表的方式展示很多张桌面背景图(如图 1a) 所示),再比如很多音乐播放器中以列表的形式展示音乐...
  • 列表框控件List Control设置行高

    千次阅读 2017-04-11 17:02:50
     简介   MFC的标准列表框控件并没有给出设置每一行高度的接口。 有两种方法可以设置: ...1.取巧的方法:为列表框插入图标,每一行的高度自动变为图标...1.在对话框上拖拉出一个List Control 控件,并设置属性Ow
  • QT 属性列表框

    千次阅读 2013-05-28 18:53:13
    需要做一个属性列表框,首先想到的就是QTableWidget来实现,但是总是感觉没有达到想象中属性列表框那么好看。 像这样的效果,而且后面的value值是根据需求可变的,如下: 这个QT中就没有现成的类来实现啦,找了...
  • VBA ListBox多选列表框值提取

    千次阅读 2022-08-05 10:42:30
    VBA Listbox多选列表框值提取
  • 本文要讲的是列表框控件(ListBox)及其使用实例。 Xtreme Toolkit Pro是屡获殊荣的VC界面库,是MFC开发中最全面界面控件套包,它提供了Windows开发所需要的11种主流的Visual C++ MFC控件,包括Command Bars、...
  • MATLAB GUI 15. 列表框listbox

    千次阅读 2020-12-19 00:59:05
    列表框是由一系列具有String属性的字符串作为列表项组成的,用户可以选择其中的一项或者多项。文件MakeWidget.mfunction MakeWidget( )[GUI, Font] = parameter_INIT( );G = MakeFrame( GUI, Font );G = MakeRadio( ...
  • json数据: { "message": "获取数据信息成功", "totalNum": 38, "couponList": [ { "position": 0, "riskLevel": "A", "labelColor": "-1", "ynTop":
  • uniapp IndexedList索引列表添加搜索

    千次阅读 2020-12-10 17:26:00
    最近做uniapp项目时,用到了IndexedList索引列表这个组件,但是需要添加一个搜索功能,于是呢我就尝试着在组件上面自己改一下。下面我就简单介绍一下: 所需组件 其实也就是两个,首先是indexedLIst索引组件,其次...
  • 给组合框或列表框添加元素一、RowSource属性添加元素二、为工作表中的ActiveX控件中的列表框添加元素三、使用list属性添加元素四、使用additem方法添加列表项五、列表框的其他属性 一、RowSource属性添加元素 ...
  • 然而,开始的程序在执行的时候却没有错误,这就说明 列表框'string'返回的存储类型绝对不是普通高维数组。cat函数与vertcat函数对与元胞数组也是使用的。例如: a = {'1231';'sdfa'} a = '1231' 'sdfa' >>...
  • 一、允许多项选择 代码如下 Private Sub UserForm_Initialize() arr = Sheets("产品表").Range("a1").CurrentRegion ... '设置列表框属性 .List = arr .MultiSelect = fmMultiSelectExtended ...
  • 列表框(ListBox)中的选项逐个往下移 // Select the next item of the currently selected one. int nIndex = m_myListBox.GetCurSel(); int nCount = m_myListBox.GetCount(); if ((nIndex != LB_ERR) && (nCount...
  • List对象列表属性值的快速搜索

    千次阅读 2018-07-30 09:27:17
    List对象列表属性值的快速搜索 对于数据的搜索已有很多成熟的方案,比如Apace Lucene框架,结合ikanalyer等分词器能实现很复杂和高效的搜索,或直接使用sql语言对数据库关键字进行搜索等。 但这些搜索都很重,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 219,055
精华内容 87,622
热门标签
关键字:

列表框的list属性