Creating Jtree Using ArryList
Good Evening.
Am new to swing, i need to create Dynamic Swing JTree for below StringArray.
Root has leaf node and Folders
Folders may have Folder node or leaf node
String path[] = {"Root/TS1",
"Root/Folder1/TS2",
"Root/Foder2/Folder3/TS3"};
It would be great help if you send me the code.
Thanks in advance.
Shrinivas
Edited by: Shrinivas on Feb 18, 2011 7:00 AM
Hi Shrinivas,
one way could be to create the nodes level by level: first all level 0 nodes, than all level 1 nodes, and so on. In this case we don't have to bother about a parent node being already created or not. To find the parent node for a particular node we just make a simple method that processes the tree recursively, for example like this:
private void buildTree(final String[] flatData, final int maxLevel) {
for (int level = 0; level < maxLevel; level++) {
for (String nodeData : flatData) {
String[] nodePath = nodeData.split("/");
if (level < nodePath.length) {
DefaultMutableTreeNode newChild = new DefaultMutableTreeNode(nodePath[level]);
parent = (DefaultMutableTreeNode) tree.getModel().getRoot();
findParent(tree.getModel().getRoot(), nodePath, level);
if (parent != null) {//null = exists already
((DefaultTreeModel) tree.getModel()).insertNodeInto(newChild, parent, parent.getChildCount());
private void findParent(final Object o, final String[] nodePath, final int level) {
int cc = tree.getModel().getChildCount(o);
for (int i = 0; i < cc; i++) {
DefaultMutableTreeNode child = (DefaultMutableTreeNode) tree.getModel().getChild(o, i);
if (child.getLevel() == level && child.toString().equals(nodePath[level - 1])) {
parent = child;
} else if (child.getLevel() == (level + 1) && child.toString().equals(nodePath[level])) {
parent = null;//exists already
if (!tree.getModel().isLeaf(child)) {
tree.expandPath(new TreePath(child.getPath()));
findParent(child, nodePath, level);
}Cheers,
André
Similar Messages
-
Create JTree using data from DataBase
Hi all,
I have GUI with JTree, and i have data in database with ParentID, ChiledID fileds,
i want to crate tree structure from using data in database.
can you people tell me how can i proceed, I will get a data as List of Vectors from DB.
Thanks
Dayai got the solution,
what i did i having object class extended DefaultMutableTreeNode and i have list of objects class refrence and i know which is parent and a child so just add the child refrence to parent refrence which stored in list.
Thanks
daya -
Creating a dynamic jtree using datas retrieved by dom in xml parsing
help me with code to create a dynamic jtree using data retrieved as nodes by xml parsing using dom
Ok, so you want to make a tree. To determine the data that appears in a tree, you have to make a custom tree model. The API for this is at :
http://java.sun.com/j2se/1.4.2/docs/api/
A tutorial for using trees is at :
http://java.sun.com/docs/books/tutorial/uiswing/components/tree.html
I assume you are going to be using Nodes, since you are using XML. For this I might start with something like
class NodeTreeModel implements TreeModelI would then implement the 'getChildCount()' as the number of subnodes a node has, and the value of a tree node to the nodes value.
Hope that starts you off. -
How can i refresh a jtree using DefaultMutableTreeNode?
I already create a jtree using DefaultMutableTreeNode, and i also could implement to it the addMouseListener to do a action when the user press every node......Also i used the following instruction to remove all nodes: root_tree.removeAllChildren(); and it instruction remove all the nodes....but when i :
fill the tree
compile my program
i see the tree in my jpanel....it is Ok!
now.....
fill the tree
remove the tree
compile my program
i see only the root (this i wish) it is Ok!
But now i would like that after that i press a combo element (in the actionperformed method):
remove the tree
fill the three with the new nodes
show the tree
But my tree always is the same :(......is like it to need a repaint ....but i already implement it...but i obtain the same result.....
Do somebody have any suggestion...or idea how i can do a refresh in my jtree?....
Anybody could help me please?
Thanks in advance.....
MaryConstruct your tree like this:DefaultMutableTreeNode rootNode = xxx;
DefaultTreeModel model = new DefaultTreeModel( rootNode );
JTree tree = new JTree( model );When you update the root node, just tell the model to fire the appropriate change event by doing this:model.reload( rootNode );or this:model.nodeStructureChanged( rootNode );or this:model.setRoot( rootNode ) -
Hashtable or Vector to create Jtree ?Data from dtatbase.
I want build JTree in JApplet .
The JApplet is connecting to a database .
As soon as data change ,JTree change.
1.How can use hashtable or Vector to create Jtree ?
the Hashtable's Data or Vector's Data from Database.
2.How Japplet connect to a database and get data?1-How can use hashtable or Vector to create Jtree ?
read JTree constrcutors in which u can use Vector for creating JTree like new JTree(myVector);
and in this myVector u can store your own objects and override toString() method of that object (stored in Vector), but as my practice its not good.
2.How Japplet connect to a database and get data?
You have to make signed applet for connecting your applet with database , and sorry to say but ita a real pain in your ------------- -
Hi,
I want to create JTree for the data in JTable, Is it possible. ThanksThis question is a repeat of your last posting:
http://forum.java.sun.com/thread.jspa?threadID=648759&tstart=0
and you still haven't followed the advice given there. Quit cluttering the forum with the same question
I will first explain what I want. I wanna 3 structures: TextField,JButton, and JTable.The Swing tutorial on [url http://java.sun.com/docs/books/tutorial/uiswing/components/list.html]How to Use Lists has an example that is identical to this except that it uses a JList instead of a JTable. However, the concept is the same.
. -
Error while creating stock using tcode: MB1C
Error while creating stock using tcode: MB1C
The Error is: Check table T004F:entry G006 does not existHi ,
Please check the FSV (field status variant) for your company code in OBY6 .
then go to transaction code OB14 --> enter the FSV --> Check if field status group G006(Material account) is maintained there or not.
if not please maintain it.
Thanks & Regards
Anshu -
Logical error in creating tables using db link in solaris
Hi,
While creating table using the syntax create table newtab...as select * from tab@dblink .. I am facing a problem. The newtab table created is having a structure different (from datalength point of view of varchar2 and char datatypes) from the source. The data length is getting tripled i.e. if a column a is varchar2(20) in tab then it is becoming --- a varchar2(60) in newtab. This is happening in solaris environment when the two databases are in 2 different servers. Please let me know if there are any patches to resolve the problem.
Thanks
ArnabORA-02019: connection description for remote database not foundHave you used this database link successfully for some other queries?
The error posted seems to indicate that the DB Link is not functional at all. Has it worked for any other type of DML operation or is this the first time you ever tried to use the link? -
How to save report in PersonalCategory after creating it using java panel?
Hi,
Anybody knows How to save report in PersonalCategory after creating it using java panel?
I dont want to save it in public folder. I want to save report (webi) in user's personal category.
can anybody send me source code?
It will help me a lot.
Thanks in advance
Amol MaliHi teda,
i'm assuming that you have seen my post that i did successfuly save report in user's personal category.
Actually the report is created in webi java panel using RE SDK and is saved in Report Sample Folder then i'm saving it in user's personal category by following code
string query = "Select SI_PERSONAL_CATEGORIES From CI_INFOOBJECTS Where "
+ "SI_INSTANCE=0 And SI_ID=" + reportID;
InfoObjects infoObjects = infoStore.Query(query);
InfoObject infoObject = infoObjects[1];
Webi wreport = (Webi)infoObject;
ObjectRelativeIDs personalIDs = wreport.PersonalCategories;
/personalIDs.Add(Convert.ToInt32(categoryID));
infoStore.Commit(infoObjects);
But the report is presents in the Folder also and in user's personal category also.
I dont want the report to be in the folder (Report Sample) if i saved it in user's personal category.
How can i do that?
any idea.
Please help me.
Thanks in advance
Amol Mali
Edited by: amol mali on Jan 9, 2009 7:55 PM -
I have an ipad mini. From one moment to another a document that was created and used on pages app ( on the ipad mini) does not want to open ( When pressed it states " document cant be opened). How can I make this document open again?
I have tried back ups and restoring, resetting, and even updating the pages app. And nothing has worked.I have an ipad mini. From one moment to another a document that was created and used on pages app ( on the ipad mini) does not want to open ( When pressed it states " document cant be opened). How can I make this document open again?
I have tried back ups and restoring, resetting, and even updating the pages app. And nothing has worked. -
Why Dynamic Parameter is not working, when i create report using stored procedure ?
Post Author: Shashi Kant
CA Forum: General
Hi all
Why Dynamic Parameter is not working, when i create report XI using stored procedure ?
Only i shaw those parameters which i used in my stored procedure, the parameter which i create dynamic using stored procedure
is not shown to me when i referesh the report for viewing the results.
I have used the same procedure which i mention below but can not seen the last screen which is shown in this .
============================================================================================
1. Select View > Field Explorer2. Right-click on Parameter Fields and select New from the right-click menu.3. Enter u201CCustomer Nameu201D as the name for your parameter4. Under u201CList of Valuesu201D select u201CDynamicu201D5. Under the Value column, click where is says u201Cclick here to add itemu201D and select Customer Name from the drop-down list. The dialog shown now look like the one shown below in Figure 1. Click OK to return to your report design.
Dynamic Parameter Setup6. Next, select Report > Select Expert, select the Customer Name field and click OK.7. Using the drop-down list beside select u201CIs Equal Tou201D and using the drop-down list, select your parameter field (it should be the first field). 8. Click OK to return to your report design and see the parameter dialog.The parameter dialog will appear and show you a dynamic list of values that is updated each time your run your report. It couldnu2019t be easier! In our next tutorial, we will be looking at how to use this feature to create cascading parameter fields, where the values are filtered by the preceding selection.
Dynamic Parameters in Action
My question is that whether dynamic parameter is working with storedprocedure or not.
When i added one table and try to fetch records using dyanmic prameters. after that i am not be able to find the dynamic parameter option when i referesh my report.
One more thing when i try the static parameter for my report, the option i see when i referesh the screen.
Please reply soon , it's urgent
Regards
shashi kantHi Kishore,
I have tested the issue step by step by following you description, while the first issue works well in my local environment. Based on my research, this can be caused by the lookup expression or it indeed return Male value based on the logic. If you use the
expression below, it will indeed only return the Male record. So please try to double-check the record in the two datasets and the expression in your environment:
=lookup(first(Fields!ProgramID.Value,"DataSet1"),Fields!ProgramID.Value,Fields!Gender.Value,"DataSet2")
As to the second issue, please try to use the following expression:
=Count(Lookup(fields!ProgramID.value,fields!ProgramID.value,fields!Gender.value,"DataSet2"))
Besides, if this issue still exist, in order to trouble shoot this issue more efficiently, could you please post both the .rdl file with all the size properties to us by the following E-mail address? It is benefit for us to do further analysis.
E-mail: [email protected]
Thanks,
Katherine Xiong
Katherine Xiong
TechNet Community Support -
Creating Report using EPM Functions with Dynamic Filters
Hi All,
I am new to BPC, In BPC 7.5 i seen like we can generate EPM report using EVDRE function very quickly and easy too. Is the same feature is existing in BPC 10.0 ? if no how can we create EPM reports using EPM Functions with Dynamic Filters on the Members of the dimension like in BPC 7.5.
And i searched in SDN, there is no suitable blogs or documents which are related to generation of Reports using EPM Functions. All are described just in simple syntax way. It is not going to be understand for the beginners.
Would you please specify in detail step by step.
Thanks in Advance.
Siva NagarajuSiva,
These functions are not used to create reports per se but rather assist in building reports. For ex, you want to make use of certain property to derive any of the dimension members in one of your axes, you will use EPMMemberProperty. Similary, if you want to override members in any axis, you will make use of EPMDimensionOverride.
Also, EvDRE is not replacement of EPM functions. Rather, you simply create reports using report editor (drag and drop) and then make use of EPM functions to build your report. Forget EvDRE for now.
You can protect your report to not allow users to have that Edit Report enabled for them.
As Vadim rightly pointed out, start building some reports and then ask specific questions.
Hope it clears your doubts. -
How to create invoice using bapi base on delivery number with example
hi,
Pl give me one example to create invoice using bapi base on delivery number (PGI).Use this code
* Pass the delivery no to the FM to create the invoice
wa_vbsk-smart = u2018Fu2019.
wa_komfk-vbeln = nast-objky. u201CuF0DF-----delivery number
APPEND wa_komfk TO it_komfk.
CLEAR wa_komfk.
* To fill the message structure
* l_wa_error-vbeln_vl = nast-objky. " Delivery No.
* l_wa_error-fkart = wa_ztab-bil_doc_type." Billing Doc type
CALL FUNCTION 'RV_INVOICE_CREATE'
EXPORTING
* delivery_date = 0
invoice_date = v_date u201C<- date
* invoice_type = ' '
* pricing_date = 0
vbsk_i = wa_vbsk
with_posting = u2018Du2019
* select_date = 0
i_no_vblog = ' '
i_analyze_mode = ' '
id_utasy = ' '
id_utswl = ' '
id_utsnl = ' '
id_no_enqueue = ' '
id_new_cancellation = ' '
** IMPORTING
* VBSK_E =
* OD_BAD_DATA =
* DET_REBATE =
TABLES
xkomfk = it_komfk
xkomv = it_komv
xthead = it_thead
xvbfs = it_vbfs
xvbpa = it_vbpa
xvbrk = it_xvbrk
xvbrp = it_vbrp
xvbss = it_vbss
* XKOMFKGN =
* XKOMFKKO = -
Error while creating Resource using GDS
Hi
Iam trying to create Resource using GDS and it is throwing me error
clresource: (C189917) VALIDATE on resource egateq00-haegate_reg-res, resource group egateq00-rg, exited with non-zero exit status.
clresource: (C720144) Validation of resource egateq00-haegate_reg-res in resource group egateq00-rg on node uhegateq02 failed.
clresource: (C891200) Failed to create resource "egateq00-haegate_reg-res".
This is the command I executed
rclresource create -g egateq00-rg -t SUNW.gds
-p Scalable=false -p Start_timeout=120 -p Stop_timeout=120 -p Probe_timeout=30
-p Port_list="23001/tcp" -p Start_command="/egateq00/scripts/reg_START.sh" -p Stop_command="/egateq00/scripts/reg_STOP.sh"
-p Probe_command="/egateq00/scripts/reg_PROBE.sh" -p Child_mon_level=1 -p Network_resources_used=egateq00-lh-res -p Failover_enabled=FALSE
-p Stop_signal=15 egateq00-haegate_reg-res
The log under /var/cluster/logs/DS says following
07/01/2008 17:56:43 uhegateq02 START-INFO> scha_resource_open failed [14]. Keeping the old Log_level value
07/01/2008 17:56:43 uhegateq02 START-ERROR> Cannot access the start command </egateq00/scripts/reg_START.sh> : <No such file or directory>
07/01/2008 18:13:23 uhegateq02 START-INFO> scha_resource_open failed [14]. Keeping the old Log_level value
07/01/2008 18:13:23 uhegateq02 START-ERROR> Cannot access the start command </egateq00/scripts/reg_START.sh> : <No such file or directory>
However, I can open these scripts and run it from anywhere. I also tested these scripts and they all work fine. They are all set to chmod 777 , so everyone should have execute permission
Iam not returning any return value from these Start and Stop script , is that the why it is failing
thanksHi
I disabled the PMF as described on the http://blogs.sun.com/TF/entry/disabling_pmf_action_script_with. This is what I did
1>Added following line in the top of my Start script
while getopts 'R:G:' opt
do
case "${opt}" in
R) RESOURCE=${OPTARG};;
G) RESOURCEGROUP=${OPTARG};;
esac
done
sleep 60 &
/usr/cluster/bin/pmfadm -s ${RESOURCEGROUP},${RESOURCE},0.svc
2>While creating the resource , I used property for Start_command="/egateq00/scripts/reg_START.sh -R %RS_NAME -G %RG_NAME"
Now , after doing this , My RG is not getting lost. Also , in the message file I do not see the errors of "Start script failed to stay UP"
However, My Application is not started either.
This is what the message file says
Jul 3 16:43:32 uhegateq01 Cluster.RGM.rgmd: [ID 515159 daemon.notice] method <gds_validate> completed successfully for resource <egateq00-haegat
e-reg-res>, resource group <egateq00-rg>, node <uhegateq01>, time used: 0% of timeout <300 seconds>
Jul 3 16:43:32 uhegateq01 Cluster.CCR: [ID 973933 daemon.notice] resource egateq00-haegate-reg-res added.
Jul 3 16:43:32 uhegateq01 Cluster.RGM.rgmd: [ID 224900 daemon.notice] launching method <gds_svc_start> for resource <egateq00-haegate-reg-res>,
resource group <egateq00-rg>, node <uhegateq01>, timeout <120> seconds
Jul 3 16:43:32 uhegateq01 Cluster.RGM.rgmd: [ID 252072 daemon.notice] 50 fe_rpc_command: cmd_type(enum):<1>:cmd=</opt/SUNWscgds/bin/gds_svc_star
t>:tag=<egateq00-rg.egateq00-haegate-reg-res.0>: Calling security_clnt_connect(..., host=<uhegateq01>, sec_type {0:WEAK, 1:STRONG, 2:DES} =<1>, .
Jul 3 16:43:35 uhegateq01 Cluster.RGM.rgmd: [ID 515159 daemon.notice] method <gds_svc_start> completed successfully for resource <egateq00-haega
te-reg-res>, resource group <egateq00-rg>, node <uhegateq01>, time used: 2% of timeout <120 seconds>
Jul 3 16:43:35 uhegateq01 Cluster.RGM.rgmd: [ID 224900 daemon.notice] launching method <gds_monitor_start> for resource <egateq00-haegate-reg-re
s>, resource group <egateq00-rg>, node <uhegateq01>, timeout <300> seconds
Jul 3 16:43:35 uhegateq01 Cluster.RGM.rgmd: [ID 252072 daemon.notice] 50 fe_rpc_command: cmd_type(enum):<1>:cmd=</opt/SUNWscgds/bin/gds_monitor_
start>:tag=<egateq00-rg.egateq00-haegate-reg-res.7>: Calling security_clnt_connect(..., host=<uhegateq01>, sec_type {0:WEAK, 1:STRONG, 2:DES} =<1
, ...)Jul 3 16:43:35 uhegateq01 Cluster.RGM.rgmd: [ID 515159 daemon.notice] method <gds_monitor_start> completed successfully for resource <egateq00-h
aegate-reg-res>, resource group <egateq00-rg>, node <uhegateq01>, time used: 0% of timeout <300 seconds>
4>Also , in the /var/cluster/logs/DS , I see the Start script started succesfully
07/03/2008 16:43:32 uhegateq01 START-INFO> Start succeeded. [egateq00/scripts/reg_START.sh -R egateq00-haegate-reg-res -G egateq00-rg]
5>Also , in the /var/cluster/logs/DS , I see the Probe script returning 0 , but this is wierd because it should return Non zero number. When I run the Probe script from the command line , it is returning me non zero value when the application is down
07/03/2008 16:43:35 uhegateq01 PROBE-INFO> The GDS monitor (gds_probe) has been started
07/03/2008 16:44:35 uhegateq01 PROBE-INFO> Probe has been executed with exit code 0 [egateq00/scripts/reg_PROBE.sh]
07/03/2008 16:44:35 uhegateq01 PROBE-INFO> The probe result is 0
07/03/2008 16:45:35 uhegateq01 PROBE-INFO> Probe has been executed with exit code 0 [egateq00/scripts/reg_PROBE.sh]
07/03/2008 16:45:35 uhegateq01 PROBE-INFO> The probe result is 0
07/03/2008 16:46:35 uhegateq01 PROBE-INFO> Probe has been executed with exit code 0 [egateq00/scripts/reg_PROBE.sh]
07/03/2008 16:46:35 uhegateq01 PROBE-INFO> The probe result is 0
07/03/2008 16:47:35 uhegateq01 PROBE-INFO> Probe has been executed with exit code 0 [egateq00/scripts/reg_PROBE.sh]
07/03/2008 16:47:35 uhegateq01 PROBE-INFO> The probe result is 0
07/03/2008 16:48:35 uhegateq01 PROBE-INFO> Probe has been executed with exit code 0 [egateq00/scripts/reg_PROBE.sh]
07/03/2008 16:48:35 uhegateq01 PROBE-INFO> The probe result is 0
07/03/2008 16:49:35 uhegateq01 PROBE-INFO> Probe has been executed with exit code 0 [egateq00/scripts/reg_PROBE.sh]
07/03/2008 16:49:35 uhegateq01 PROBE-INFO> The probe result is 0
07/03/2008 16:50:35 uhegateq01 PROBE-INFO> Probe has been executed with exit code 0 [egateq00/scripts/reg_PROBE.sh]
07/03/2008 16:50:35 uhegateq01 PROBE-INFO> The probe result is 0
07/03/2008 16:51:35 uhegateq01 PROBE-INFO> Probe has been executed with exit code 0 [egateq00/scripts/reg_PROBE.sh]
07/03/2008 16:51:35 uhegateq01 PROBE-INFO> The probe result is 0
07/03/2008 16:52:35 uhegateq01 PROBE-INFO> Probe has been executed with exit code 0 [egateq00/scripts/reg_PROBE.sh]
07/03/2008 16:52:35 uhegateq01 PROBE-INFO> The probe result is 0
07/03/2008 16:53:35 uhegateq01 PROBE-INFO> Probe has been executed with exit code 0 [egateq00/scripts/reg_PROBE.sh]
07/03/2008 16:53:35 uhegateq01 PROBE-INFO> The probe result is 0
07/03/2008 16:54:35 uhegateq01 PROBE-INFO> Probe has been executed with exit code 0 [egateq00/scripts/reg_PROBE.sh]
07/03/2008 16:54:35 uhegateq01 PROBE-INFO> The probe result is 0
07/03/2008 16:55:35 uhegateq01 PROBE-INFO> Probe has been executed with exit code 0 [egateq00/scripts/reg_PROBE.sh]
07/03/2008 16:55:35 uhegateq01 PROBE-INFO> The probe result is 0
07/03/2008 16:56:35 uhegateq01 PROBE-INFO> Probe has been executed with exit code 0 [egateq00/scripts/reg_PROBE.sh]
07/03/2008 16:56:35 uhegateq01 PROBE-INFO> The probe result is 0 -
Error while creating Routing using LSMW
Hi Guys ,
I am trying to create LSMW using Direct Input Method .
My structures are ::
RC271_DS Work center structure for direct input (for datasets)
RC27M_DS Material master view DIRECT INPUT routing for datasets
PLKO_DI_DS Header structure for direct input (for datasets)
PLPO_DI_DS Routing/item structure for direct input (for datasets.
I getting correct data from multiple flat files .
It's converting the data also .
But while executing start direct input method i am getting the followig error ....
You cannot edit the task list object with activity type
Please let me know problem guys .
Regards,
RajHi Naveen,
It means you have to assign the task list type to material type ZPRD. Then it will carry its job:
The path is:
Go To-> SPRO-> IMG Activity-> Production-> Basic Data-> Routing-> General Data---> Define Material Type Assignments. T-Code: OP50
I hope it will work.
Regards,
Madhu.G
Maybe you are looking for
-
Every time I do a Google search, the first link in that search clicked will direct me to a known attack site at http://64.111.212.229/ (URL followed by lines of gibberish code). It will occur only on the first link of any new search attempted. My AV
-
About 2 weeks ago my iPod told me that something (I forget what now) was corrupt and my iPod had to be restored to factory settings, so I did that. Before I had a chance to resync my iPod, my harddrive in my MacBook Pro crashed and had to be replace
-
Memory Leak in edited images?
I am using Captivate 4.0.1 Build 1658 (this means that the patch from May 2009 is applied) on Windows Vista. The following has happened to myself and at least 2 other developers. We edit a slide background image in Photoshop...when the movie plays,
-
Early 2011 Macbook external display issues after firmware update
I have a 2011 MBPro 15". After performing the firmware update in late April, I have continual issues when I connect my monitor. The screen is blank and I can move the mouse tap the keyboard etc. The display may come up for a scond and then it will cl
-
I m unable to access apple os after windows 7 instalation and its not giving the boot option
i m unable to access apple os after windows 7 instalation and its not giving the boot option. plz any one help me out .. how to fix it or how to delete windows 7 on my macbook