在Delphi中如何利用treeview进行视频播放

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Delphi中如何利用treeview进行视频播放相关的知识,希望对你有一定的参考价值。

就是通过层层点击点击到视频文件,选择,选择后用控件播放视频(这部分我懂),就是不知道怎么把树的节点上放上视频文件。急求解答,没分了但真的很急!
界面如图

因为treeview控件节点无法存放视频文件,所以无法按题目要求实现,但可以采用其他方法实现。

两种方法:

一、数据库表方法

    建立一张表,其中一个字段存放视频文件名,另一个字段存放视频文件路径;

    在表单初始化时从数据库表将表记录读出,并写入treeview节点(treeview1.items.add或treeview1.items.addchild);

    在treeview的onchange事件中编写代码,根据所选的节点名,传出文件路径,实现控件播放视频。

二、直接读取方法

  1.将视频文件存在固定位置,并存入变量中;

  2.在表单初始化时直接写文件名至treeview节点;

  3.在treeview的onchange事件中将路径变量和文件名直接传给控件进行播放。

参考技术A 你搜一下如何处触发 treeview 节点 事件就好了

delphi 在DbGridEh中显示TreeView 效果

看到关于在DbGridEh中显示TreeView 效果的一个文档,但是说的太过于简陋了,也不知道demo在哪里,自己尝试了一下,但是没有实现,有哪位达人知道如何实现的能仔细说一下么?主要是控件和属性的设置,或者有demo也可以
这样的效果,grid里面第一栏用的是树形结构

参考技术A 你说的效果指的是什么效果?追问

请看图片

追答

下载Ehlib组件5.2以上版本,然后安装好。(d7用5.2-5.3版,d7以上版本用5.2版以上)

添加组件:

1、ADOQuery1--连接数据库

2、DataSetDriverEh1--连接ADOQuery1

3、MemTableEh1--连接DataSetDriverEh1

4、DataSource1--连接MemTableEh1

5、DBGridEh1--连接DataSource1并显示列表

主要设置是在MemTableEh1控件

   MemTableEh1.TreeList.Active:=True;
   MemTableEh1.TreeList.KeyFieldName:= 'ID';  //节点字段(父)
   MemTableEh1.TreeList.RefParentFieldName:='ID_PARENT';  //引用节点字段(子)
   MemTableEh1.TreeList.DefaultNodeExpanded:=True;  //打开时自动展开
   MemTableEh1.Open;

 

追问

我完全是这样设置的,但是就是不行,刚才看了一下代码,貌似我用的是ehlib 4.2的,难道是这个原因?我是直接静态设置的,没有通过代码控制,这个应该不影响吧,另外可以把你查的这个表的数据结构让我看看吗?查询语句也可以,

追答

我也是静态设置的,代码只是说明一下而已。

因为你是静态设置,你要注意你那几个控件的Active属性是不是都设置为true了。

还有你说的不行,是不能运行,还是运行后没这个效果?

我的表结构图:

本回答被提问者采纳

以上是关于在Delphi中如何利用treeview进行视频播放的主要内容,如果未能解决你的问题,请参考以下文章

Delphi的基于接口(IInterface)的多播监听器模式(观察者模式 ),利用RTTI实现Delphi的多播事件代理研究

delphi中的treeview控件如何取到选择节点的索引号?

DELPHI 如何打开和 保存 TREEVIEW 的状态

delphi 在DbGridEh中显示TreeView 效果

在Delphi中,使用TreeView创建结构树,何种方法最好?

Delphi TreeView 问题