精华内容
下载资源
问答
  • QComboBox下拉列表框QComboBox以占用最少屏幕空间的方式向用户显示选项列表。它是一个选择控件,显示当前项目,并可以弹出可选项目列表。组合框可以是可编辑的,允许用户修改列表中的每个项目。QComboBox类属性...

    2cd0d77712a955681856aeaebd20fedc.png

    QComboBox下拉列表框

    QComboBox以占用最少屏幕空间的方式向用户显示选项列表。它是一个选择控件,显示当前项目,并可以弹出可选项目列表。组合框可以是可编辑的,允许用户修改列表中的每个项目。

    870e2ecf639e72fdfeb4ccca21ab3a8e.png

    QComboBox类属性

    • editable 设置是否可编辑
    • currentText设置当前列表框显示内容(前提是先在列表框添加内容)
    • currentIndex设置当前列表框显示内容的索引(前提是先在列表框添加内容)
    • maxVisibleitems当下拉列表弹出时,允许显示的最大子项目
    • maxCount设置下拉选项集合中的数目
    • insertPolicy设置用户在可编辑的组合框中输入一个新的字符串时插入的策略
    NoInsert 不插入InsertAtTop 在顶部插入InsertAtCurrent在当前插入 InsertAtBottom 在底部插入InsertAfterCurrent 在当前的后面插入InsertBeforeCurrent 在当前的前面插入InsertAlphabetically 按字母顺序插入
    • sizeAdjustPolicy大小调节策略
    AdjustToContents 根据所有内容的长度 AdjustToContentsOnFirstShow根据第一次显示的内容长度 AdjustToMinimumContentsLength 适应最小内容长度AdjustToMinimumContentsLengthWithIcon 适应最小内容长度与图标
    • minimumContentsLength 最小的内容长度
    • iconSize 图标大小
    • duplicatesEnabled 设置用户在可编辑的组合框中重复添加
    • frame 边框
    • modelColumn设置显示的模型列

    QComboBox信号

    67467299228aef9208112b5c6f38436a.png

    信号触发条件:

    • activated(QString) 与用户交互时,某个条目被选中发出信号,并传递条目的值
    • activated(int) 与用户交互时,某个条目被选中发出信号,并传递条目的索引
    • currentIndexChanged(QString) 当前索引发生改变时发出信号,并传递改变之后的值(用户交互,代码控制)
    • currentIndexChanged(int) 当前索引发生改变时发出信号,并传递改变之后的索引(用户交互,代码控制)
    • currentTextChanged(QString) 当前文本内容发生改变时,并传递文本内容
    • editTextChanged(QString) 编辑的文本发生改变时发出信号,并传递文本内容
    • highlighted(QString) 在下拉列表中,鼠标移动到某个条目时发出信号,并传递条目的值
    • highighted(int) 在下拉列表中,鼠标移动到某个条目时发出信号,并传递条目的索引

    在Qt设计师中,直接双击可添加下拉框条目

    df630b10855c792bc476ddb3b6ff18db.png

    QComboBox 下拉框实例

    import sys
    from PyQt5.QtWidgets import QWidget, QComboBox, QApplication
    
    
    class ComboxDemo(QWidget):
        def __init__(self):
            super().__init__()
            # 设置标题
            self.setWindowTitle('ComBox例子')
            # 设置初始界面大小
            self.resize(300, 200)
    
            # 实例化QComBox对象
            self.cb = QComboBox(self)
            self.cb.move(100, 20)
    
            # 单个添加条目
            self.cb.addItem('C')
            self.cb.addItem('C++')
            self.cb.addItem('Python')
            # 多个添加条目
            self.cb.addItems(['Java', 'C#', 'PHP'])
    
            # 信号
            self.cb.currentIndexChanged[str].connect(self.print_value) # 条目发生改变,发射信号,传递条目内容
            self.cb.currentIndexChanged[int].connect(self.print_value)  # 条目发生改变,发射信号,传递条目索引
            self.cb.highlighted[str].connect(self.print_value)  # 在下拉列表中,鼠标移动到某个条目时发出信号,传递条目内容
            self.cb.highlighted[int].connect(self.print_value)  # 在下拉列表中,鼠标移动到某个条目时发出信号,传递条目索引
    
        def print_value(self, i):
            print(i)
    
    
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        comboxDemo = ComboxDemo()
        comboxDemo.show()
        sys.exit(app.exec_())
    展开全文
  • 控件是MSDN和网络上的一些资料修改而来的。  控件用了ToolStripControlHost,是当下拉列表显示树的时候,主窗体不会事情焦点。...先看控件的使用:控件下拉内容是一个树控件控件的源代码: Impo

        此控件是MSDN和网络上的一些资料修改而来的。

        控件用了ToolStripControlHost,是当下拉列表显示树的时候,主窗体不会事情焦点。

        控件的树赋值加载节点和原来的一样。

        有几个小程序要用到这个控件,都没时间去改。以前用的方法是:在树拖放一个节点到一个文本框中来处理。


    先看控件的使用:控件下拉内容是一个树控件。

    下拉树

    控件的源代码:

    Imports System.Security.Permissions
    
    Namespace NF
    
        <SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags:=SecurityPermissionFlag.UnmanagedCode)> _
        Public Class ComboBoxTreeView
            Inherits ComboBox
    
            Private Const WM_USER As Integer = &H400
            Private Const WM_REFLECT As Integer = WM_USER + &H1C00
            Private Const WM_COMMAND As Integer = &H111
            Private Const CBN_DROPDOWN As Integer = 7
    
            Private Const WM_LBUTTONDOWN As Integer = &H201
            Private Const WM_LBUTTONDBLCLK As Integer = &H203
    
            Private treeViewHost As ToolStripControlHost
            Private Shadows dropDown As ToolStripDropDown
    
            Private _treeView As New TreeView
    
            Public Sub New()
                _treeView.BorderStyle = BorderStyle.None
                AddHandler _treeView.AfterSelect, AddressOf treeview_AfterSelect
                AddHandler _treeView.DoubleClick, AddressOf treeView_DoubleClick
                treeViewHost = New ToolStripControlHost(_treeView)
                dropDown = New ToolStripDropDown()
                dropDown.Width = Me.Width
                dropDown.Items.Add(treeViewHost)
                dropDown.AutoClose = True
            End Sub
    
            Public ReadOnly Property TreeView() As TreeView
                Get
                    Return CType(treeViewHost.Control, TreeView)
                End Get
            End Property
    
            Public ReadOnly Property SelectedNode() As TreeNode
                Get
                    Return TreeView.SelectedNode
                End Get
            End Property
    
            Private Sub ShowDropDown()
                If Not (dropDown Is Nothing) Then
                    treeViewHost.Width = DropDownWidth
                    treeViewHost.Height = DropDownHeight
                    dropDown.Show(Me, 0, Me.Height)
                End If
            End Sub
    
            Public Sub treeView_DoubleClick(sender As Object, e As EventArgs)
                dropDown.Close()
            End Sub
    
            Public Sub treeview_AfterSelect(sender As Object, e As TreeViewEventArgs)
                Me.Text = TreeView.SelectedNode.Text
            End Sub
    
            Public Shared Function HIWORD(ByVal n As Integer) As Integer
                Return (n >> 16) And &HFFFF
            End Function
    
            Protected Overrides Sub WndProc(ByRef m As Message)
                'If m.Msg = WM_REFLECT + WM_COMMAND Then
                '    If HIWORD(CType(m.WParam, Integer)) = CBN_DROPDOWN Then
                '        ShowDropDown()
                '        Return
                '    End If
                'End If
                'MyBase.WndProc(m)
                If m.Msg = WM_LBUTTONDBLCLK OrElse m.Msg = WM_LBUTTONDOWN Then
                    ShowDropDown()
                    Return
                End If
                MyBase.WndProc(m)
            End Sub
    
            Protected Overrides Sub Dispose(ByVal disposing As Boolean)
                If disposing Then
                    If Not (dropDown Is Nothing) Then
                        RemoveHandler TreeView.AfterSelect, AddressOf treeview_AfterSelect
                        RemoveHandler TreeView.DoubleClick, AddressOf treeView_DoubleClick
                        dropDown.Dispose()
                        dropDown = Nothing
                    End If
                End If
                MyBase.Dispose(disposing)
            End Sub
    
        End Class
    
    End Namespace

    窗体调用下拉树控件代码:

    Public Class Form1
        Dim root As New TreeNode
        Dim node As TreeNode
    
        Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
            root.Text = "根目錄"
            root.Name = 0
            For i As Integer = 1 To 20
                node = New TreeNode With {.Name = i, .Text = "node" & i, .Tag = i * 10}
                root.Nodes.Add(node)
            Next
            cboTreeView.TreeView.Nodes.Add(root)
            cboTreeView.TreeView.ExpandAll()
        End Sub
    
        Private Sub cboTreeView_TextChanged(sender As Object, e As System.EventArgs) Handles cboTreeView.TextChanged
            node = Me.cboTreeView.SelectedNode
            If node IsNot Nothing AndAlso node.Tag IsNot Nothing Then
                Me.TextBox1.Text = node.Tag.ToString
            Else
                Me.TextBox1.Text = "nothing"
            End If
        End Sub
    End Class


    以前的相关内容:

    VB.Net程序设计:在DataGridView附加多列显示CombBox控件的代码段。

    http://blog.csdn.net/linjimu/article/details/5070936

    VB.Net自己写的一个控件:ComboBox下拉列表中显示多列数据(可以绑定数据表)

    http://blog.csdn.net/linjimu/article/details/1861641

    展开全文
  • 点击第一个下拉列表后,会联动第二个列表中的内容3.要求使用frame的绝对布局 应用效果二、下拉框combobox使用1.基本配置主要用于选择,比如省市联动选择必须要载入Qcombobox类。实例化类为一个对象,对这个对象进行...

    知识回顾:

    1.掌握Qpixmap图片对象

    2.掌握qlabel控件装载和调整图片

    本节知识视频教程

    以下开始文字讲解:

    一、目标案例:省市联动选择

    1.需要两个下拉列表

    2.点击第一个下拉列表后,会联动第二个列表中的内容

    3.要求使用frame的绝对布局

    应用效果

    二、下拉框combobox使用

    1.基本配置

    主要用于选择,比如省市联动选择必须要载入Qcombobox类。

    实例化类为一个对象,对这个对象进行配置,实则就是对下拉列表的配置。

    combo1=QComboBox(myframe1)  在实例化的时候,要选择父容器

    combo1.move(20,0)

    我们通过addItem来往combobox中装入项目。

    combo1.addItem("选择省份")

    combo1.addItem("浙江")

    combo1.addItem("江苏")

    combo1.addItem("安徽")

    用到clear方法将所有项目进行清空。

    2.下拉选择事件

    Combobox的点击事件

    理解为激活actived信号。

    信号有两种传递方式:

    第一种:传递字符串,这个实则传递的是选择的文本。

    combo1.activated[str].connect(自定义槽方法)

    第二种:传递整型变量,这个传递的是选择的索引。索引默认从0开始。

    第一项的索引是0,第二项的索引是1,依次类推..

    combo1.activated[int].connect(自定义槽方法)

    省市联动的combobox

    注意:必须要将需要联动的控件做成类对象的属性。实际上就是加上self.

    三、扩展知识内容

    下拉列表框也可以进行输入,但是需要对方法进行配置。

    配置setEditable 为True:

    combo1.setEditable(True)

    对应的信号为: editTextChanged

    那么我们同样可以采用信号槽的方式实现编辑时候的事件处理函数。

    得出的经验特点:

    我们在书写信号的时候,这些信号基本上都是以ed进行结尾的。

    四、总结强调

    1.掌握qcombobox的载入布局与项目加载。

    2.掌握下拉列表的编辑和对应事件。

    3.掌握联动的思想。

    本节知识源代码:

    import sysfrom PyQt5.QtWidgets import QApplication,QWidget,QLabel,QComboBox,QFrameclass MyClass(QWidget):def __init__(self):super(MyClass, self).__init__()self.initUI()def initUI(self):self.setWindowTitle("刘金玉编程")self.setGeometry(300,100,400,300)myframe1=QFrame(self)myframe1.move(50,50)lbl1=QLabel("省",myframe1)lbl1.move(0,3)combo1=QComboBox(myframe1)combo1.move(20,0)# combo1.setEditable(True)combo1.activated[str].connect(self.myActived)#省份combo1.addItem("选择省份")combo1.addItem("浙江")combo1.addItem("江苏")combo1.addItem("安徽")#市级lbl1 = QLabel("市", myframe1)lbl1.move(100, 3)self.combo2 = QComboBox(myframe1)self.combo2.move(120, 0)self.show()def myActived(self,s):self.combo2.clear()if s=="浙江":self.combo2.addItem("杭州")self.combo2.addItem("宁波")self.combo2.addItem("温州")elif s=="江苏":self.combo2.addItem("苏州")self.combo2.addItem("无锡")self.combo2.addItem("扬州")self.combo2.addItem("南京")if __name__=="__main__":app=QApplication(sys.argv)mc=MyClass()app.exec_()

    长按关注公众号

    相关文章:

    展开全文
  • VB版下拉式内容显示控件及实例,下拉式计数器控件,和下拉列表不太一样,不明白的看下截图可帮助理解。示例演示了三种形式三种功能的下拉式计数器控件,一是下拉显示内容,二是可以进行简单的计算。
  • 涉及到几个MFC的简单控件使用,进度条,下拉列表框,按钮,程序中更新静态文本的内容,COM的使用 声明:内容及其简单,本人自己也是自己摸索做的一个小软件,只适用于初初初学者
  • QComboBox下拉列表框QComboBox以占用最少屏幕空间的方式向用户显示选项列表。它是一个选择控件,显示当前项目,并可以弹出可选项目列表。组合框可以是可编辑的,允许用户修改列表中的每个项目。QComboBox类属性...

    QComboBox下拉列表框QComboBox以占用最少屏幕空间的方式向用户显示选项列表。它是一个选择控件,显示当前项目,并可以弹出可选项目列表。组合框可以是可编辑的,允许用户修改列表中的每个项目。

    QComboBox类属性editable 设置是否可编辑

    currentText设置当前列表框显示内容(前提是先在列表框添加内容)

    currentIndex设置当前列表框显示内容的索引(前提是先在列表框添加内容)

    maxVisibleitems当下拉列表弹出时,允许显示的最大子项目

    maxCount设置下拉选项集合中的数目

    insertPolicy设置用户在可编辑的组合框中输入一个新的字符串时插入的策略NoInsert 不插入

    InsertAtTop 在顶部插入

    InsertAtCurrent在当前插入

    InsertAtBottom 在底部插入

    InsertAfterCurrent 在当前的后面插入

    InsertBeforeCurrent 在当前的前面插入

    InsertAlphabetically 按字母顺序插入sizeAdjustPolicy大小调节策略AdjustToContents 根据所有内容的长度

    AdjustToContentsOnFirstShow根据第一次显示的内容长度

    AdjustToMinimumContentsLength 适应最小内容长度

    AdjustToMinimumContentsLengthWithIcon 适应最小内容长度与图标minimumContentsLength 最小的内容长度

    iconSize 图标大小

    duplicatesEnabled 设置用户在可编辑的组合框中重复添加

    frame 边框

    modelColumn设置显示的模型列

    QComboBox信号

    信号触发条件:activated(QString) 与用户交互时,某个条目被选中发出信号,并传递条目的值

    activated(int) 与用户交互时,某个条目被选中发出信号,并传递条目的索引

    currentIndexChanged(QString) 当前索引发生改变时发出信号,并传递改变之后的值(用户交互,代码控制)

    currentIndexChanged(int) 当前索引发生改变时发出信号,并传递改变之后的索引(用户交互,代码控制)

    currentTextChanged(QString) 当前文本内容发生改变时,并传递文本内容

    editTextChanged(QString) 编辑的文本发生改变时发出信号,并传递文本内容

    highlighted(QString) 在下拉列表中,鼠标移动到某个条目时发出信号,并传递条目的值

    highighted(int) 在下拉列表中,鼠标移动到某个条目时发出信号,并传递条目的索引

    在Qt设计师中,直接双击可添加下拉框条目

    QComboBox 下拉框实例

    import sys

    from PyQt5.QtWidgets import QWidget, QComboBox, QApplication

    class ComboxDemo(QWidget):

    def __init__(self):

    super().__init__()

    # 设置标题

    self.setWindowTitle('ComBox例子')

    # 设置初始界面大小

    self.resize(300, 200)

    # 实例化QComBox对象

    self.cb = QComboBox(self)

    self.cb.move(100, 20)

    # 单个添加条目

    self.cb.addItem('C')

    self.cb.addItem('C++')

    self.cb.addItem('Python')

    # 多个添加条目

    self.cb.addItems(['Java', 'C#', 'PHP'])

    # 信号

    self.cb.currentIndexChanged[str].connect(self.print_value) # 条目发生改变,发射信号,传递条目内容

    self.cb.currentIndexChanged[int].connect(self.print_value) # 条目发生改变,发射信号,传递条目索引

    self.cb.highlighted[str].connect(self.print_value) # 在下拉列表中,鼠标移动到某个条目时发出信号,传递条目内容

    self.cb.highlighted[int].connect(self.print_value) # 在下拉列表中,鼠标移动到某个条目时发出信号,传递条目索引

    def print_value(self, i):

    print(i)

    if __name__ == '__main__':

    app = QApplication(sys.argv)

    comboxDemo = ComboxDemo()

    comboxDemo.show()

    sys.exit(app.exec_())

    展开全文
  • 下拉列表其实有两个高度,一个是下拉列表控件的高度,仔细看一下会发现这个高度是不可调节的, 另一个高度则是下拉列表的高度,这个高度默认是和下拉列表控件高度相同, 既然相同就很容易理解为什
  • 今天小编就为大家分享一篇关于Android使用Spinner控件实现下拉列表的案例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
  • Default.aspx内容` &amp;amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot; &amp;amp;gt; &amp;amp;lt;head runat=&amp;quot;server&amp;quot;&amp;amp;gt; ...
  • 根据上级菜单所选,决定下级菜单的列表内容 数据源 首先读取数据库中的数据得到数据,由于数据库中的数据是分散的几个二维表格,查询出来的数据是Map键值对的List集合,不能直接拿来用,需要先进行处理:一级...
  • PropertyGrid控件下拉列表

    千次阅读 2013-09-21 13:42:49
    把别人的例子稍做了一下修改,部分内容没看懂,但程序可以运行,如果有什么错误或不当之处,请指教!...自定义一个特性类ListAttribute,提供下拉列表值: 3 /// 4 public class ListAttribute : Attribute 5
  • C# 读取Word内容控件

    2019-09-22 06:36:40
    下拉列表内容控件 下拉列表包含了一个预先定义好的列表。和组合框不同的是下拉列表不允许用户编辑项。 纯文本内容控件 纯文本内容控件只能包含文本,不能包含其他项,例如表格、图片或其他内容...
  • C# 获取Word内容控件

    2019-08-28 11:03:17
    下拉列表内容控件 下拉列表包含了一个预先定义好的列表。和组合框不同的是下拉列表不允许用户编辑项。 纯文本内容控件 纯文本内容控件只能包含文本,不能包含其他项,例如表格、...
  • 在使用AutoCompleteTextView控件时,出现控件下拉列表显示为空白,当选中下拉列表的某一栏时却能看见内容的现象。
  • Android程序的基本控件使用之7下拉列表Spinner 7下拉列表Spinner 掌握下拉列表Spinner的使用; 可以通过程序配置下拉列表Spinner显示内容; 可以通过配置文件配置下拉列表Spinner显示内容。   通过本程序就...
  • 根据内容类型不同具体可分为:组合框内容控件、复选框内容控件、文本内容控件、图片内容控件、日期选取器内容控件、下拉列表内容控件等。本文就将通过使用Java程序来演示如何给Word文档添加以上六种内容控件类型。...
  • 包括组合框内容控件(ComboBox)、复选框内容控件(CheckBox)、文本内容控件(Text)、图片内容控件(Picture)、日期选取器内容控件(DatePicker)、下拉列表内容控件等(DropDownList)等。下面将通过代码演示。...
  • Java 添加Word内容控件

    2019-12-03 11:36:44
    包括组合框内容控件(ComboBox)、复选框内容控件(CheckBox)、文本内容控件(Text)、图片内容控件(Picture)、日期选取器内容控件(DatePicker)、下拉列表内容控件等(DropDownList)等。下面将通过代码演示。 ...
  • 在做项目时,经常用到下拉列表下拉列表的数据源不管是本地数据还是从服务器下载缓存到本地的数据,道理大同小异,设置下拉列表的步骤是一样的。简单总结设置Spinner的步骤如下: 1. 建立一个需要显示存放Spinner...
  • 这篇教程教大家利用Word中的开发工具插入控件,避免各种五花八门的填写。在工作中,经常会把表格文件分发给个人填写后再集中整理的情况。以学生为例,辅导员需要收集每个学生的个人信息,将信息登记表分发下去再回收...
  • 内容不可编译 控件属性栏设置为: 效果: 添加列表 int AddString( LPCTSTR lpszString ); lpszString 指向要添加的Null终止的字符串。 查找 int FindString( int nStartAfter, LPCTSTR lpszString ) const;...
  • protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) { if (!Page.IsPostBack) ...调试时,DropDownList下拉列表没有内容,请各位高手指点!!(数据库连接是没有问题的。)
  • 用mfc实现组合框控件下拉列表显示

    千次阅读 2015-01-30 11:46:48
    MFC里组合框控件显示下拉列表 现在正在帮一个大四的哥们做毕业设计。需要设计一个MFC程序。实现的功能是实现和GSM模块的通信。也就是能够通过这个程序来收发短信。这个功能很简单,短信的内容也是实现约定好的ASCII...
  • aspx文件内容 <form id="form1" runat="server" onsubmit=""> <div style="margin: 100px auto; width: 80%; text-align: left"> <asp:GridView ID="GridView1"...
  • 当在某个网站注册账号的时候,网站会让我们提供性别,生日,城市等信息,为了方便,就提供了一个下拉列表供我们选择,在Android也同样有这样的功能,这就是Spinner下拉列表 在编码的同时,首先需要在布局中定时...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 622
精华内容 248
关键字:

下拉列表内容控件