小魔女 发表于 2015-1-16 22:33:23

ASP.NET编程:TreeView利用条记

完全不一样的。.net其实我也说不太清,.net可以把他理解为跟J2EE相对的工具。c++主要做系统相关的开发你要学.net的话就应该学C#。(其实微软在.NET平台上也考虑了给C++留一个地位。treeview|条记TreeView由节点组成,建立经由过程对TreeView.items属性举行操纵。Items是一个TTreeNodes工具,这是一个TTreeNode集。


1、针对TTreeNodes,也就是TreeView.Items,有这些属性:
1、count,节点个数。
2、item,经由过程index失掉节点。


2、针对TTreeNodes,也就是TreeView.Items,经常使用的增加节点的操纵有:
AddFirst增加第一个根节点。由此函数增加的节点总排在后面,除非厥后又利用此函数增加了一个节点,则后增加的节点将排在后面。该函数前往新增加的节点。
AddChildFirst增加第一个子节点,请求有父节点作为其参数。前往新增加的节点。
AddChild增加一个子节点,请求有父节点作为其参数。前往新增加的节点。
Add增加一个兄弟节点,请求有兄弟节点作为其参数。前往新增加的节点。


3、针对TTreeNodes,也就是TreeView.Items,经常使用的失掉节点的操纵有:
GetFirstNode()失掉根节点。
然后共同TTreeNode.GetNext(),就能够会见一切的节点。


4、建立举例:


var
root_node,cur_node:TTreeNode;
begin
root_node:=AddFirst(nil,根节点1);
cur_node:=addChildfirst(root_node,nil,根节点1_child1);
add(cur_node,根节点1_child2);
root_node:=Add(nil,根节点2);
AddChildFirst(root_node,根节点2_child1);
end;





5、事务触发:
当从一个节点跳到另外一个节点,会触发TTreeView.OnChange事务。该事务中,将传送node,即以后被选中的节点。


当修正一个节点的text时,会触发TTreeView.onEdit事务。



6、将节点和节点所对应的数据接洽起来
关于每一个TTreeNode,有个Data属性,能够寄存一个指针。我们能够使用这个域来寄存与节点对应的本人的数据。
1.我们先界说一个数据布局,作为纪录我们要纪录的数据。如:
type
PMyData=^TMyData;
TMyData=Record
sFName:string;
sLName:String;
nIndex:integer;
end;


2.然后,创立数时,将节点和节点数据接洽起来:
procedureTForm1.Button1Click(Sender:TObject);
var
myshuju:PMyData
cur_node:TTreeNode;
begin
New(MyRecPtr);//记着,必定要先分派内存。有几个节点,就要分派几回内存。
myshuju^.FName:=Edit1.Text;
Myshuju^.LName:=Edit2.Text;
TreeViewIndex:=StrToInt(Edit3.Text);
withTreeView1do
begin
cur_node:=items.AddFirst(nil,first);
cur_node.data:=myshuju;
end;
end;


3.当我们选中一个节点时,就能够利用我们的数据了。
procedureTForm1.TreeView1Change(Sender:TObject;Node:TTreeNode);
begin
ifnode.datanilthen
self.label1.caption:=pmyData(node.data)^.Fname+pmyData(node.data)^.Lname
end;



7、一样平常利用流程:
1、增加全局变量:
b_first:boolean;//纪录是不是是第一次会见节点,由于此时数据还未筹办好,而一旦会见节点就会触发OnChange事务,在此事务处置函数中大概会堕落。
2、在FormCreate中,
a、设置b_first:=true;
b.创立数并将节点与数据接洽。
3、在FormShow中
设置b_first:=false;
4.在事务OnChange中处置节点被选中事务。
5.在Edit中处置节点被修正Text事务。
并挪用OnChange.
6.在TreeView.Destory中
开释Data中指向的内存空间。说句实话,Java跨平台根本就不是外行人想想的那种,一次编译,处处运行。

谁可相欹 发表于 2015-1-19 16:27:19

逐步缩小出错代码段的范围,最终确定错误代码的位置。

飘灵儿 发表于 2015-1-27 22:32:47

主流网站开发语言之ASP:ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和VisualBASIC类似,可以像SSI(ServerSideInclude)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。

因胸联盟 发表于 2015-2-5 12:43:02

弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。

仓酷云 发表于 2015-2-11 20:55:15

如今主流的Web服务器软件主要由IIS或Apache组成。IIS支持ASP且只能运行在Windows平台下,Apache支持PHP,CGI,JSP且可运行于多种平台,虽然Apache是世界使用排名第一的Web服务器平台。

莫相离 发表于 2015-3-11 05:42:51

网页从开始简单的hmtl到复杂的服务语言,走过了10多个年头,各种技术层出不穷,单个的主流技术也在不断翻新的版本,现在分析下各种语言的区别、优势、劣势、开发注意事项!

愤怒的大鸟 发表于 2015-3-17 21:29:35

能产生和执行动态、交互式、高效率的站占服务器的应用程序。运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写。

海妖 发表于 2015-3-25 03:25:29

众所周知,Windows以易用而出名,也因此占据不少的服务器市场。
页: [1]
查看完整版本: ASP.NET编程:TreeView利用条记