高分相赠,TTreeview类的重构问题,回答有分 请问如何定义一个类继承TTreeview的所有方法和属性,但要在TTreeview的TTreeNode属性下增加一个Newname:string的属性。请问如何的重构及调用???????????????多谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 就是在其父类继承过来,加上private FNewName:string;published property NewName string read FNewName; 你要重构TTreeView是一个非常简单的事情,但是你的要求是更改Node,呵呵,那就巨麻烦了。你最少要写三个控件:TTreeNode,TTreeNodes,和TTreeView,然后才有可能能用(因为还有一些地方可能会出错,不过因为Delphi具有多态性,因此大概就没有问题了。不过相对来说改动的地方巨大无比。不过你可以尝试该该delphi的源代码试试,然后使用brcc来对该文件进行编译一下,呵呵,不敢保证成功哦。哦,100分,呵呵,我试试先。 呵呵,居然让我成功了(delphi5)。100分啊,哈哈。首先找到Comctrls.pas文件,打开,找到TTreeNode的声明的地方,然后进行如下修改:在Private中增加fMyName: string;在Published中增加:property MyName: string read fMyName write fMyName //简单的模式,如果你需要更改成什么出发事件等等类型或者其他的,可以看看如何写控件的书或者156514982最重要的:在保存前,需要首先备份原Comctrls文件。然后:到dos模式下的comctrls文件目录执行:dcc32 comctrls.pas 将你修改的comctrls.pas文件编译成dcu,当然会出现warning,没有关系的。呵呵。最后,将编译后的dcu文件复制到lib目录和lib目录下的debug目录(呵呵,不要忘记复制前备份原文件哦)。ok,编程序,测试: 搞定。程序如下:button1Clickbegin TreeView1.Selected.MyName:='AAABBB'; ShowMessage(TreeView1.Selected.MyName);end; 基于机顶盒环境的软件开发,前景如何? DBchart问题(在线等) 字符串问题??? 在线等候 ADO连SQL server 后,在创建表之前怎么判断是否有同名的表存在? 如何在点击自己定义的一个文件(*.frp),自动激活对应打开应用程序。详细内容看帖。 delphi中有没有line控件。 调查:看有多少编程的是湖北的。本人是湖北荆州的。 How to add a nonscrolling region to a topic ? Delphi下载版本求解!!! 怎么能得到当前字段的数据类型呢?在线等待 大家快来看。
private
FNewName:string;
published
property NewName string read FNewName;
不过相对来说改动的地方巨大无比。不过你可以尝试该该delphi的源代码试试,然后使用brcc来对该文件进行编译一下,呵呵,不敢保证成功哦。
哦,100分,呵呵,我试试先。
首先找到Comctrls.pas文件,打开,找到TTreeNode的声明的地方,然后进行如下修改:
在Private中增加
fMyName: string;
在Published中增加:
property MyName: string read fMyName write fMyName //简单的模式,如果你需要更改成什么出发事件等等类型或者其他的,可以看看如何写控件的书或者156514982
最重要的:
在保存前,需要首先备份原Comctrls文件。
然后:到dos模式下的comctrls文件目录执行:dcc32 comctrls.pas 将你修改的comctrls.pas文件编译成dcu,当然会出现warning,没有关系的。呵呵。
最后,将编译后的dcu文件复制到lib目录和lib目录下的debug目录(呵呵,不要忘记复制前备份原文件哦)。
ok,编程序,测试: 搞定。
程序如下:
button1Click
begin
TreeView1.Selected.MyName:='AAABBB';
ShowMessage(TreeView1.Selected.MyName);end;