treeview控件使用详解

treeview控件使用详解,第1张

TreeView 控件的主要属性包括 Nodes 和 SelectedNode。Nodes 属性包含树视图中的顶级节点列表。SelectedNode 属性设置当前选中的节点。您可以在节点旁边显示图标。该控件使用在树视图的 ImageList 属性中命名的 ImageList 中的图像。ImageIndex 属性可以设置树视图中节点的默认图像。

在设计器中添加或移除节点

选择 TreeView 控件。

在“属性”窗口中,单击 Nodes 属性旁的“省略号”() 按钮。

显示“树节点编辑器”。

若要添加节点,必须存在根节点;如果不存在根节点,必须先单击“添加根”按钮添加一个根节点。然后,就可通过选择根节点或任何其他节点并单击“添加子级”按钮来添加子节点。

若要删除节点,请选择要删除的节点,然后单击“删除”按钮。

循环访问 TreeView 控件的所有节点

创建测试每个节点的递归过程(C# 和 C++ 中为递归方法)。

调用该过程。

下面的示例演示如何打印每个 TreeNode 对象的 Text 属性:

Visual Basic 复制代码

Private Sub PrintRecursive(ByVal n As TreeNode)

SystemDiagnosticsDebugWriteLine(nText)

MessageBoxShow(nText)

Dim aNode As TreeNode

For Each aNode In nNodes

PrintRecursive(aNode)

Next

End Sub

' Call the procedure using the top nodes of the treeview

Private Sub CallRecursive(ByVal aTreeView As TreeView)

Dim n As TreeNode

For Each n In aTreeViewNodes

PrintRecursive(n)

Next

End Sub

确定单击了哪个 TreeView 节点

使用 EventArgs 对象返回对已单击节点对象的引用。

通过检查 TreeViewEventArgs 类(它包含与事件有关的数据),确定单击了哪个节点。

Visual Basic 复制代码

Private Sub TreeView1_AfterSelect(ByVal sender As SystemObject, _

ByVal e As SystemWindowsFormsTreeViewEventArgs) Handles TreeView1AfterSelect

' Determine by checking the Node property of the TreeViewEventArgs

MessageBoxShow(eNodeText)

End Sub

建议下载安MSDN 上面给得比较详细 这里只拷一部分过来

上一节我们介绍了登录窗体的GUI设计与功能实现,用户的账号和密码校验完成后应当跳转到主窗体内容,这一节我们将具体介绍主窗体界面的设计与功能实现!

我们新建一个900x640的窗口,顶部加入,下面主体部分创建两个Panedwindow容器,左边添加按钮,右边作为TreeView显示界面;

显示效果:(注意:tkinter在Mac上Panedwindow不支持修改前景色背景色)

在右边的Pannedwindow容器中,添加一个LabelFrame容器作为查询区域,在LabelFrame容器中添加一系列的Label、Entry、Button控件,可以输入学号、姓名、电话、身份z、查询、和显示全部信息:

显示效果:

创建控件、设置对齐方式和每个列的标题

显示效果:

登录成功后,在顶部显示用户姓名和登录时间,用户姓名是怎么来的?是我们在登录窗口输入的,所以这就涉及到了跨窗体数据的传递。这一点非常重要!

登录窗体(登录信息)==>主窗体

传递的基本方式:构造函数

在主窗体的构造函数中添加一个接收参数 current_user ,在登录窗体加载新窗体时将参数传递进去;

但是我们登录窗体的登录函数 login() 中用户名的变量 user 是局部变量,函数调用完了之后就变量就没有了,那怎么调用呢?

我们需要在登录窗体的构造函数中定义全局变量:

为了获取用户登录的时间,我们定义一个获取当前时间的方法:

然后在加载主窗体时将参数 selfuser 和 selfget_now_time() 作为参数传递进去

另一边,我们在主窗体中,在构造函数中添加全局变量

之后,我们在Top_banner中通过标签将user信息展示出来:

这样主窗口就会显示通过登录窗口登录的用户名(首字母自动转大写)和登录时间:

效果演示:

然后我们在构造方法中把这个函数写入,以实现自动把学生信息写入到all_student_list中

文件中读取到的学生信息存储到all_student_list列表,以此作为参数传入加载TreeView的方法中;

在构造方法中调用该方法,自动把所有学生信息加载到TreeView中

运行效果:

这一节我们实现了主窗体的搭建,从界面的布局到TreeView加载全部学生信息。学生数据如此之多,如果我们想精确查看具体某个学生的信息该怎么做呢?下一讲,我们将实现学生信息的查询功能,敬请期待吧~

以上就是关于treeview控件使用详解全部的内容,包括:treeview控件使用详解、Python GUI项目实战(二)主窗体的界面设计与实现、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9821476.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存