java二叉树家谱实现

java二叉树家谱实现,第1张

mport java.awt.BorderLayout

import java.awt.Dimension

import java.awt.event.ActionEvent

import java.awt.event.ActionListener

import java.util.Random

import javax.swing.JButton

import javax.swing.JFrame

import javax.swing.JPanel

import javax.swing.JScrollPane

import javax.swing.JTree

import javax.swing.tree.DefaultMutableTreeNode

public class Randomtree extends JFrame {

private JTree tree

public static String[] school = { "初中课程", "高中课程", "大学课程" }

public static String[] color = { "颜色"禅绝, "运动", "食物" }

public static String[] plant = { "植物", "动物", "人" }

public static String[][] school2= {

{ "初中一年级", "初中二年级族氏", "初中三年级"}, {"高中一年级", "高中二年级",

"高中三年级"}, {"大学一年级", "大学二年级", "大学三年级", "大学四年级"} }

public static String[][] color2 = {

{ "绿色", "白色", "红色"}, {"足球", "篮球",

"羽毛球"}, {"面包", "牛奶", "披萨", "热狗"} }

public static String[][] plant2 = {

{ "玫瑰花", "月季花", "海棠花"}, {"猪", "兆袭散狗",

"猫"}, {"黄种人", "黑种人", "白种人", } }

public static void main(String[] args) {

// TODO 自动生成方法存根

new Randomtree()

}

public Randomtree() {

super()

final Random random=new Random()

setVisible(true)

setSize(300,400)

tree = new JTree()

final JPanel panel = new JPanel()

panel.setPreferredSize(new Dimension(0, 40))

getContentPane().add(panel, BorderLayout.NORTH)

final JScrollPane scrollPane = new JScrollPane()

scrollPane.setPreferredSize(new Dimension(300, 350))

getContentPane().add(scrollPane, BorderLayout.CENTER)

final JButton button = new JButton()

button.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {

int k=random.nextInt(3)

tree=getTree(k)

scrollPane.setViewportView(tree)

}

})

scrollPane.setViewportView(null)

button.setText("随机生成树")

panel.add(button)

pack()

}

protected JTree getTree(int n) {

String[] second=null

String[][] three=null

if(n==0){second=schoolthree=school2}

if(n==1){second=colorthree=color2}

if(n==2){second=plantthree=plant2}

DefaultMutableTreeNode root=new DefaultMutableTreeNode("root")

for(int i=0i<second.lengthi++){

DefaultMutableTreeNode secondNode=new DefaultMutableTreeNode(second[i])

for (int j=0j<three[i].lengthj++){

DefaultMutableTreeNode threetNode=new DefaultMutableTreeNode(three[i][j])

secondNode.add(threetNode)

}

root.add(secondNode)

}

JTree tree=new JTree(root)

tree.expandRow(1)

tree.expandRow(5)

tree.expandRow(9)

return tree

}

}

简单的 例子你可以模仿一下

分类: 电脑/网络 >>程序设计 >>其他宏李编程语言

问题描述:

这个网站wjct里..比如搜索姓陈的.会有两个排列方式.一个叠式.一个塔式.叠的容易实现.塔的结构.用ASP是怎么实现的.我不太会用递归.请告诉解决.给个思路也行..

这个是具 *** 置wjct/pedigree?id=41&idn=陈铺头世系宗谱(二门)

解析:

sub tree(parentid,istop)

if istop then

sql="select * from tree where id=" &parentid &" and parentid=0"

else

sql="select * from tree where parentid=" &parentid

end if

set rs=server.createobject("adodb.recordset")

rs.open sql,conn,1,1

if not rs.eof then

redim arr_temp(rs.recordcount)

i=0

response.write "<table border=0 cellspacing=2 cellpadding=0><tr>"

while not rs.eof

arr_temp(i)=rs("id")

response.write "<td align='center' bgcolor='#CCCCCC'>" &rs("title") &"</td>"

i=i+1

rs.movenext

wend

response.write "</tr><tr>"

for j=0 to i-1

response.write "<td>"

Call tree(arr_temp(j),false)

response.write "</td>"

next

response.write "</tr></table>"

end if

end sub

call tree(1,true)

测试通过!~

要数据库+源码的,请下载:

irich/images/tree.rar

请在5号前下载,,要不5号后我不枯判担没绝改保还能不能下

问题一:目前,最好的家谱制作软件是哪个? 家谱先生6.1是单机版的,功能挺全的。只能个人用用,无法跟同宗分享。

问题二:我想制作个家谱,可是不知道在电脑上用什么软件好,最好是简单容易 *** 作的 onlinedown/soft/39407

家谱先生(FamilyKeeper) 6.1

一款国产的具有很高实用价值的专用家谱制作软件。无论您是新修、续修、还是改修老式家谱、或者是抢救复制私藏老谱,该软件都将成为您家谱管理的强有力工具。 该家谱软件的突出特点如下: ・面向大型家谱管理:成功的实现了家谱的分卷管理技术,卷与卷之间有机结合,上下卷之间跳转自如,随意漫游;续卷灵活,纵横方向均可自由续卷,同一部家谱内续卷数量不限,续卷的世代宽度自由安排,从而有效的实现了对大型家谱的管理。 ・多族谱管理:可以同时对多部(任意姓氏的)族谱管理。 ・强劲的族谱维护技术:族谱连接、族谱拆分、更改族谱起始世代数,还可在卷内对节点(子树)任意精确移动。 ・家族成员信息完备:家谱记录内容丰富,资料显示图文并茂,家族成员的数据参数定义完备。 ・检索结果形象丰富:资料检索结果直观形象,配以“寻根链”视图可以一览查询成员的传承脉系。 ・目录、文件管理隐含化:将家谱编写中可能遇到的目录、文件管理工作完全隐含到软件内部,即使电脑知识很少的网友也能轻松上手。 ・家谱打印:该功能是本软件的核心亮点之一,可以将您录入好的家谱资料打印成册,便于分发给家族的各个成员。目前提供四种打印家谱方案: ①方案一:打印家谱内容包括(家族梗概、目录树、父子图、个人资料)等几大部分。 ②方案二:打印家谱内容包括(家族梗概、目录树、阶梯图、个人资料)等几大部分。 ③方案三:打印家谱内容包括(家族梗概、目录树、宝塔图、个人资料)等几大部分。 ④方案四:打印家谱内容包括(家族梗概、目录树、传承图、个人资料)等几大部分。[分横排、竖排两种版式] ・真人肖像模式:使用该显示模式,在世系图上您可以为每个节点上的成员定义制作成茄判衡员本人的真人肖像,从而使得世系图更加生动、形象。 ・多媒体资料信息管理:软件为每个成员定义了一个相册、影像集和录音集(不加入资料不占空间),您可以将成员精彩的照片、视频及音频资料加入到家谱中,制成一个图、文、像、声并茂的现代数字家谱,软件内置媒体播放器。

download.enet/...page=1

问题三:做族谱用什么软件方便? 看你需要什么类型的家谱:1、纸质家谱:书籍形式,正式规范,需要采集资料、编辑排版、印刷装订,过程较繁琐,成 本 较高。2、网络家谱:通过网站或APP修谱,过程简单,甚至不用钱, *** 作简单或有使用说明。

家谱是记载家族人文的核心载体,写家谱要明确采用哪种格式。

比如欧阳修式、苏洵式、宝塔式、牒记式、图文对照式、横排图表式、竖排图文式、表记式、图记式等。示例:使用 找你家谱 编修 宝塔式 家谱冲州,形象直观,简洁易用。

手机修谱・网络寻根tieba.baidu/p/4865322667蒲千寻家谱展示tieba.baidu/p/4865510206――找你家谱 FindU

问题四:制作家谱用什么软件好 要求高的话用方正书版、indesign,没什么特别要求的用word就行。

问题颤做五:家谱软件哪个好 coreldraw 差不多

或者Adobe InDesign 也不错

主要得看你会什么软件

问题六:想制作个家谱,有哪些比较实用好用的软件? 那就看看流行的互联网同心圆家谱咯。利用互联网络技术,把传统的纸质家谱转化为数码的、 电子版的数字家谱,清晰明了的展示家谱中的内容,把家族中的每个人都有效的连接起来,形 成一个动态的的家族部落群,共同构成互联网家谱。家谱中的成员可以在互联网家谱中寻找祖 先的足迹、家族历史起源和历程,家族成员信息可以随时查阅和增加,这就是互联网家谱。

问题七:想制作一本家谱,用什么软件好? 常见的传统家谱都是纸质的,方便就数电子版本的家谱了。(百姓通谱网)

优势:

1、经济、准确。传统修缮家谱耗时耗力。

2、便于携带、传递、保存。互联网家谱的问世让家谱更容易携带,只需一张U盘,复制,粘贴即可。互联网家谱不怕潮湿不发霉。不怕虫蛀不少页,让家谱保存更加方便。

3、超大容量。在这个信息时代,文字。声音。图片。视频等媒体信息,也可以存放于互联网家谱中。让家谱内容更充实。互联网家谱的超大容量可录入更多的个人信息和媒体资料。

4、查看方便。便于修改。有续传承。互联网家谱真正实现查看方便,不必再为了查找祖源时亲自到当地看家谱。互联网家谱结合传统的修谱模式与现代人的现实需求,可以不受时间和空间的限制。让身在不同地域的家族人都可以共同管理。真正实现有续传承。

5、隐私保护,授权浏览。

问题八:家谱软件哪个好 国产的亿图不错, *** 作方便,图形、线条、添加图片这些添加都很方便,还可以直接使用模板、一键从数据库快速的创建家谱、族谱,下面是亿图里边的一个例子,你可以参考一下:

问题九:制作家谱用什么软件好? 传承家谱程序是专门做树形家谱的程序,而且输出为WORD文档,也可以图形输出。 输出树形谱系为TXT文件,可以输出任意大小的树形谱系,避免了版面上的限制。 可以在百度搜索,最新版本为5.20

问题十:想制作一本族谱,用什么软件好? 天下家谱 V6.1.12下载................多特软件站....................OKOKOKOK

求采纳为满意回答。


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

原文地址: http://outofmemory.cn/yw/12544649.html

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

发表评论

登录后才能评论

评论列表(0条)

保存