Tree Controle
Hello Every Body !
i am frusted about work in Developer 6i in windows environment using
Tree View Controle
Please any body have FMB example or source code that let me start work ...
so please send me mail at
[email protected]
or replay me with code on this form.
waiting for your replay
Khurram
have a look at the sample code in the forms - section. Dowload this and copy the tree-example in one of your template.
http://download.oracle.com/otn/other/general/forms10gdemos9_0_4_2.zip
Similar Messages
-
How can I display and change built-in symbols of a tree control programmatically?
I want to set the built-in symbols of a tree control during runtime.
I only found an example to assign custom pictures but not how to select one of the 40 built-in symbol.
Many Thanks
Solved!
Go to Solution.The ActiveItem.SymbolIndex will allow you to select the symbol for the active item. You can use the ListBox Symbol Ring Constant (Dialog and User Interface palette) to select a symbol (or you can just enter the number directly if you know what it is).
Message Edited by smercurio_fc on 07-10-2008 09:36 AM
Attachments:
Example_VI_BD6.png 2 KB -
Not able to get the database data into the Tree Control
Hi Everybody,
I have to populate the tree control with nodes and items, which is to be populated from the database, and the tree control is <b>dynamic</b>. I mean, there is a <b>toolbar</b>, whenever a <b>pushbutton is clicked</b>, depending on that the tree contents has to be changed.
If anybody had worked with <b>CL_GUI_COLUMN_TREE</b> control to get the data from database, depending upon the <b>pushbutton selected in Toolbar</b>, please paste the seudocode for it.
Regards,
Abdul,
Intelligroup.
P.S: Helpful answers will be rewarded.have you seen this demo program
SAPCOLUMN_TREE_CONTROL_DEMO
Regards
Raja -
How to get all items under a parent item in a tree control
Hello,
I have 2 questions regarding a tree control:
1) Is there any way to specify a parent item tag and get an array of ALL its sub item tags? For example, in the attached vi, specify the Parent#2 parent tag and get an array containing Item#P21 and Item#P22
2) Is there a way to specify a range to the ActiveCell property. For example, all items from line#1 to line number#3
Any ideas?
Attachments:
Tree example.vi 6 KBMentos wrote:
1) Is there any way to specify a parent item tag and get an array of ALL its sub item tags? For example, in the attached vi, specify the Parent#2 parent tag and get an array containing Item#P21 and Item#P22
Did you try a search? There's no direct way of doing this. You have to navigate the tree and build up an array. You can find an example here: http://forums.ni.com/t5/LabVIEW/get-all-children-of-a-parent-in-tree/td-p/729548
2) Is there a way to specify a range to the ActiveCell property. For example, all items from line#1 to line number#3
No. (It's called ActiveCell, not ActiveCells) Presumably you are trying to perform an operation on multiple items. Unfortunately, you need to use a loop. You should defer panel updates if you're doing this a lot. -
How to binding incoming xml node list to the tree control as dataProvider
Recently, I faced into one issue: I want to binding incoming xml node (it's not avaliable at start) list to the tree control as a dataProvider.
Since the incoming xml node list is not avaliable at beginning but I needs to bind it to the tree, so I create one virtual one in the xml, and prepare to remove it before the tree is shown. (ready for the actual node adding). But It did not work.
Please see the presudo-code here:
1. Model layer(CsModel.as)
public class CsModel
[Bindable]
public var treeXML:XML=<nodes><car label="virtualOne" id="1">
</car></nodes>;
(Here, I want to build binding relationship on the <car/> node,
one 'virtual/stub' node is set here with lable="virtualOne".
But this node will be deleted after IdTree
control is created completely.)
[Bindable]
public var treeData:XMLList =new XMLListCollection(treeXML.car);
2. view layer(treePage.mxml)
private var _model:CsModel = new CsModel();
private function addNode():void
var newNode:XML=<car/>;
newNode.@label="newOne";
newNode.@id=1;
_model.treeXML.appendChild(newNode);
private function cleanData():void
delete _model.treeXML.car;
<mx:VBox height="100%" width="100%">
<mx:Button label="AddNode" click="addNode()" />
<mx:Tree id="IdTree" labelField="@label"
creationComplete="cleanData()"
dataProvider="{_model}"/>
</mx:VBox>
3. Top view layer (App.Mxml)
<mx:application>
<treePage />
</mx:application>
For method: cleanData(),It's expected that when the treePage is shown, we first delete the virutalOne to provide one 'clear' tree since we don't want show virtualOne to the user. The virutalOne node just for building the relationship between treeData and treeXML at beginning. But the side effect of this method, I found, is that the relationship between treeXML and treeData was cut off. And this leads to that when I added new node (by click the 'addNode' button) to the xmlXML, the xmlData was not affected at all !
So Is there any other way to solve this issue or bind the incoming xml node list to the xmlListCollection which will be used as Tree control's dataProvider ?If u want to display the name : value then u can do like this
<xsl:eval>this.selectSingleNode("name").nodeName</xsl:eval> : <xsl:value-of select="name" /> -
How can I save the all the values of a tree control ?
I have a problem, in run time, I adds new items on a tree control, but i don´t know how I can save the values of the child text of each item in a file.
Thanks.I'm no expert on the tree control, but I made a small example to save all items to a textfile, including item tag, item string, and indent level. One drawback of this method is that it fully expands the tree regardless how the user left it. To go the other direction, you'd have to write a routine to go through the text file and programmatically build the tree.
To master the tree control, I think you have to resort to creating a control reference for it and using the Invoke Node to do some operations. For another approach to traversing and operating on a tree, check out the "Traversing Tree Controls and Setting Custom Symbols" (search the NI Developer Zone site).
Best of luck,
John
Attachments:
Save Tree Structure to Textfile.vi 32 KB -
How can I drag and drop an item from one Tree control to another in LabVIEW 7.1?
You can use the mouse up and down event on the two tree controls but the problem is making the correct selection in the second tree control. I want to be able to switch over to the selection bar of the second tree control so that I can place my item in the correct position. I know all possible workarounds with double-clicks and so on... but I really want a windows drag and drop.
This is what I have for the moment. Please check the library below. I need to activate the selection bar of the second tree control somehow to get the position in the control. The VI below is written in LV 7.1
Attachments:
Drag&Drop.llb 65 KBHi Jones,
As far as I know this feature is currently not supported by the Tree control. A workaround, would be to use the vertical position of the mouse in the button up event to determine what line you�re dropping the item.
If you would like the Tree control to include the drag and drop feature, please submit this as a Product Suggestion under the feedback at www.ni.com/contact.
Good luck!
Best regards,
Philip C.
Applications Engineer
National Instruments
www.ni.com/ask
- Philip Courtois, Thinkbot Solutions -
How to use the drop event of the tree control in LabVIEW 8.20?
Hi,
I am using the two tree controls in my application to provide a option for the user to drag and drop item from one tree to the other. I have to validate the user selection. I tried to capture the user drop event using the event structure. The problem I am facing is, I am not able to drop the item even though i have wired a constant true to the filter(Accepted?) in the event case. I have enable the property(Allow droping) in the right menu of the tree control also.
While configuring an event case for (drop, drag entered and some thing like this) only I am getting the problem otherwise it is working fine.
What do i need to do to caprture the drop event ?
Is there any way to avoid the item duplication while droping a new item in the tree control ?
or how can i do this?
Thanks,
Pandiarajan RHi Pandiarajan,
I hope you are doing well today! There is a lengthy discussion on the Tree Control Drag & Drop feature at this forums post including contributions from the developer of the Drag & Drop feature:
Tree Control Drag & Drop in LabVIEW 8
By avoiding item duplication, do you mean that you don't want the same item to be in the old tree control or do you not want more than one item in the new tree control?
Adnan Zafar
Certified LabVIEW Architect
Coleman Technologies -
How to get position of a ring in a tree control?
Ok, this is probably a stupid question, but how does one get the position of a ring inside of a tree control? I have a tree with two columns, with rings in the second column. I can set the position using SetTreeCellRingValueFromIndex(), but how does one get the position after the user has modified the control? I found the functions GetTreeCellRingIndexFromValue() and GetTreeCellRingValueFromIndex() but I haven't found a way to get either the Index or the Value of the ring (what I'm looking for is the index, but if I can obtain the value I can go from there). Thanks in advance!
Solved!
Go to Solution.Hi,
You can use GetTableCellVal function to get the value of the ring.
There is not special "ring" function for that. Maybe that's what you were searching for
From the value you can get to the index using the functions you are already aware of.
Hope this helps,
S. Eren BALCI
www.aselsan.com.tr -
How do I get the tag of a selected line in a tree control ?
I am running LabVIEW 7.1.
I want to be able to add a parent or sibling to a tree to a selected item in a tree.The tag of the selected item is actually the output of the tree control itself. If you create an indicator from the tree control, you will get a duplicate tree control (indicator), but if you wire the output into a string indicator, the tag of the selected item will show up. You can an item to the tree by wiring the tree reference into an invoke node, calling the method "Edit Tree Items: Add Item", and wiring the output of the tree control (which will be the tag of the selected item) into the "Parent Tag" terminal. This method will only let you add a child to an item, you cannot add a parent or sibling. Items cannot have multiple parents, so it wouldn't make sense to add a parent; and to add a sibling for the selected item, you could call the method "Navigate Tree: Get Parent" and pass the tag of the parent into the "Edit Tree Items: Add Item" method.
Robert Mortensen
Software Engineer
National Instruments -
Tree control - How to get the full path of selected Item in tree control
I am Flex newbie. When the user clicks the particular item in
the tree control I just wanted to get it name along with it's full
parent.
Here is my XML
var dirXML:XML=<root basename="/home/tcegrid">
<Directories>
<Dir Name=".autosave" />
<Dir Name=".emacs.d" />
<Dir Name="AnsysDistributed">
<Dir Name="opt"/>
<Dir Name="root" />
</Dir>
<Dir Name="postgres"/>
<Dir Name="FineTurbo"/>
<Directories>
</root>
The above XML is data provider for Tree control. When the
user clicks the Dir Name called opt. I wanted it absolute path in
XML. say Directories.Dir.Dir.@Name is opt
Can any one tell me how to get this?"Thamizhannal" <[email protected]> wrote in
message
news:gam9q8$4es$[email protected]..
>I am Flex newbie. When the user clicks the particular
item in the tree
>control
> I just wanted to get it name along with it's full
parent.
> Here is my XML
> var dirXML:XML=<root basename="/home/tcegrid">
> <Directories>
> <Dir Name=".autosave" />
> <Dir Name=".emacs.d" />
> <Dir Name="AnsysDistributed">
> <Dir Name="opt"/>
> <Dir Name="root" />
> </Dir>
> <Dir Name="postgres"/>
> <Dir Name="FineTurbo"/>
> <Directories>
> </root>
>
> The above XML is data provider for Tree control. When
the user clicks the
> Dir
> Name called opt. I wanted it absolute path in XML. say
> Directories.Dir.Dir.@Name is opt
> Can any one tell me how to get this?
loop until the parent() property of the XML node is empty.
HTH;
Amy -
How to render image in tree control without embed it
Hello frndz i am working on tree control and want to show imagein its node through xml list collection.i have searched a lot for this but in every example with tree control images are embeded.i dont want to hardcode the image.Need to make the image comes from database(Xml).so is there any live or demo example for tree control.
Thanks in Advance
Vineet oshoif you decompile the imaging.ear file, there is a web.xml file which you can add the following parameter:
<context-param>
<param-name>oracle.adf.view.rich.security.FRAME_BUSTING</param-name>
<param-value>never</param-value>
</context-param>
or take a look at Receiving "Warning: Unable to load content in a frame. Frame content will load at the top level." When Trying to Use the <af:inlineFrame> Component [ID 1266770.1] on Oracle Support.
Make sure you take a copy of the imaging app before you make changes. You can then upload back through the weblogic console.
Sudi -
Tree-control for data input?
Hi,
I need to program an input screen for values that have hierarchical dependencies (e.g. sums). I feel, the most adequate user-interface would be a tree control, because of the data dependencies and also because the users asked for a possibility to collapse/expand parts of the data during input.
I had a look at CL_GUI_COLUMN_TREE, but I'm not sure, if it can be used for data input. Has anyone done something like this before or can anybody direct me to some additional sample coding? (the sample coding in the reuse library didn't do it...)
Thanks for your help, greetings, Kathrin!Hello Kathrin,
Since you say that the user's input is hierarchical in nature, it is nice to have a tree-control for input. But, the choice of using a custom-control-version of the tree is a cause for some concern. I cannot recollect any of the SAP screens where the input can be given through such a tree framework (please do let me know if you have come across one). The problem with such a tree would be in the areas of even-handling. Filling the tree with appropriate data at the right times would be another challenge.
However, there's one alternative that I would like to direct your attention to. You must have observed another kind of tree, when you select an application component from the APPLICATION HIERARCHY, which is just like a list. Also, the <i>Transport Organizer (SE09)</i>, <i>Menu Painter (SE41)</i> etc., have this kind of a tree. You can use this if you (or rather your users) are very particular on having a tree display. For more information, you can see the Function Group <b>SEUT</b>, which has the required function modules to accomplish the same. The Function Group is well documented, and you might have to work a little on the function modules themselves.
Please do let me know if this is a suitable option to meet your requirement. All the best,
Regards,
Anand Mandalika. -
Items in Tree control move around when data is submitted using custom ItemRenderer
I'm working on a Tree control with an XMLListCollection as
its dataProvider.
The dataProvider has information looking like this :
quote:
<?xml version='1.0' encoding='utf-8'?>
<INFO>
<FIELD label="STR_USER_NAME"
type="text"
value=""
>
</FIELD>
<FIELD label="STR_USER_EMAIL"
type="text"
value=""
>
</FIELD>
<FIELD label="STR_OPTIONAL"
type="branch"
value="0"
>
<FIELD label="STR_USER_ADDRESS"
type="text"
value=""
>
</FIELD>
<FIELD label="STR_USER_POSTAL_CODE"
type="text"
value=""
>
</FIELD>
</FIELD>
</INFO>
So in the Tree control I'd like the information to show up
with a label and
an
editable textbox for each item :
[Label] [textbox]
To do this I made a tree like this :
quote:
<mx:Tree id="userTree"
editable="true"
rendererIsEditor="true"
editorDataField="curVal"
itemRenderer="{new ClassFactory(ItemRendererUser)}"
itemEditEnd="e_ProcessData(event);"
dataDescriptor="{new DataDescriptorUsers()}"
showRoot="false"
verticalScrollPolicy="{ScrollPolicy.AUTO}"
/>
where the e_ProcessData() function looks like this (I used
http://livedocs.adobe.com/flex/201/html/wwhelp/wwhimpl/js/html/wwhelp.htm?href=c
elleditor_073_16.html#202105 as a guide) :
quote:
public function e_ProcessData(event:ListEvent):void
event.preventDefault();
userTree.editedItemRenderer.data.@value =
ItemRendererUsers(event.currentTarget.itemEditorInstance).curVal;
userTree.destroyItemEditor();
userTree.dataProvider.notifyItemUpdate(userTree.editedItemRenderer);
} // END OF e_ProcessData()
I attached the rest of the files because they're a little
bit longer.
When I run the program, the data shows up fine when it is
initialized the
very
first time, and I made a test button that just dumps the
contents of the
dataProvider in a trace statement to verify that the data has
been set
properly.
The problem I've run into is whenever the textfield is
edited, the item
that
I've selected jumps around the list.
For example, if I edit the item "STR_USER_NAME" after I
finish the edit, it
will move from the very first position in the Tree to the
bottom of the
Tree.
I traced the contents of the dataProvider and the
dataProvider structure
stays
the same, with the "STR_USER_NAME" at the top, but if I look
at the flex app
in
the web browser, its position is at the bottom of the Tree.
This happens for every other item I try to edit... I read in
the
documentation
that the ItemRenderers are recycled, so it means I should be
checking to
make
sure the initial states are covered, but I'm not sure how
this affects my
application.
Can anyone help me out with this ? Its very confusing - I've
tried making
an
ItemRenderer using pure actionscript, mxml and the
combination you see in
this
example and I always end up with the same behaviour - So I
must be missing
something critical...
// ItemRendererUsers.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas xmlns:mx="
http://www.adobe.com/2006/mxml"
verticalScrollPolicy="{ScrollPolicy.OFF}"
horizontalScrollPolicy="{ScrollPolicy.OFF}"
creationComplete="initItemRendererUsers();"
>
From my FAQ:
Q: I've created a custom itemRenderer component to use in a
List
based component (Datagrid, TileList, HorizontalList, etc.).
When my List
first displays, everything looks fine, but when I scroll it
or change the
dataProvider, some of the itemRenderers show values or
formatting that
aren't right. How do I fix this?
A: List-based components don't draw a renderer for every item
in the
dataProvider. Instead, they create enough to display what is
on screen now,
plus one or two more waiting in the wings. This means they
recycle the
renderers rather than creating new ones when you change
dataProvider or
scroll up and down. When you use a creationComplete event to
set up the
itemRenderer, that event doesn't happen again when the
renderer is used for
a different set of data. The solution to this is to override
the set data
protected function that most components have.
For more information, check out the following resources:
http://www.adobe.com/devnet/flex/articles/itemrenderers_pt1.html?devcon=f1
http://blogs.adobe.com/aharui/2007/03/thinking_about_item_renderers_1.html
Please note, I post this FAQ weekly, and you can find a
permanent copy of it
here
http://www.magnoliamultimedia.com/flex_examples/Amys_Flex_FAQ.pdf"peterh8234" <[email protected]> wrote in
message
news:gaqttd$kft$[email protected]..
> Yes - the set and get functions are listed down below.
But the quirky
> behaviour
> is the same regardless of whether I override the set and
get functions or
> not.
>
> I noticed there was another variable called listData -
should I be using
> that
> one or the data variable to read and write to the
dataProvider ?
>
> // _data
> [Bindable] public var _data:Object;
> [Bindable("dataChange")]
> //
> override public function get data():Object
> {
> trace('[ItemRendererDefault.GET data()] called for {' +
> _data.attribute("label") + '}.');
> return _data;
> } // END OF get data()
>
> //
> override public function set data(value:Object):void
> {
> _data.@value = inputText.text;
> trace('[ItemRendererDefault.SET data()] called for {' +
> _data.attribute("label") + '}.');
>
> invalidateProperties();
> } // END OF set data()
Your set data needs to set a flag that gets picked up in
commitProperties()
and does your thing that you were doing before in
creationComplete. You
should see examples of this in the links I posted. Instead of
this:
_data.@value = inputText.text;
you should look at implementing IDropInListItemRenderer,
which will allow
you to dynamically determine which field to look at, instead
of hardcoding
it. You also might wind up overwriting the stored value with
a null value
when the List passes the stored value in. I'd encourage you
to really go
through those links I posted and make sure you understand
what they're
saying. The itemRenderer life cycle is one of the hardest
things to
understand, but once you understand it, it makes many things
in Flex much
easier. It's worth investing the time. -
Report with Dynamic tree control
I have a report with a TREE CONTROL.
<p>
A Tree is referenced to: CL_GUI_ALV_TREE_SIMPLE and is located on the left side of the screen.
<p>
See diagram below. The Tree has MULTI-LEVEL nodes and the user can click on any of the nodes which will
trigger a report (rellevant for that node) to appear in the REPORT container.
<p>
Everythign is working fine.
<p>
I now have a requirement to add a TREE ON/OFF functionality. I have added this by 'Freeing' TREE
container and by initializing when the user Turns ON the TREE. It is working fine, HOWEVER, when
it initilizes the TREE it is COLLAPSED and obviously does not point to the NODE that was clicked.
<p>
My goal is to retain the value of the NODE that was pressed and EXPAND the tree to that node and
highlight it... Please note that I have MULTI-LEVEL nodes and the user can double click on NODES
and ITEMS.
<p>
I tried using GET_SELECTED_NODES, but it only works if the user selects the LOWEST level node/item.
<p>
Any advise will be appreciated.
<p>
Also, as an alternative, I was thinking of resizing TREE container to WIDTH of 1 when the user PRESSES
TREE OFF and resizing back to width 200 when the user presses TREE ON. I could not find any methods
that would work with CL_GUI_DOCKING_CONTAINER.
Please help! Thank you in advance.
<br>
<br>
<img src="http://img237.imageshack.us/img237/6684/bdccz3.jpg" border="0"/></a>
<p>
<p>I have a report with a TREE CONTROL.
<p>
A Tree is referenced to: CL_GUI_ALV_TREE_SIMPLE and is located on the left side of the screen.
<p>
See diagram below. The Tree has MULTI-LEVEL nodes and the user can click on any of the nodes which will
trigger a report (rellevant for that node) to appear in the REPORT container.
<p>
Everythign is working fine.
<p>
I now have a requirement to add a TREE ON/OFF functionality. I have added this by 'Freeing' TREE
container and by initializing when the user Turns ON the TREE. It is working fine, HOWEVER, when
it initilizes the TREE it is COLLAPSED and obviously does not point to the NODE that was clicked.
<p>
My goal is to retain the value of the NODE that was pressed and EXPAND the tree to that node and
highlight it... Please note that I have MULTI-LEVEL nodes and the user can double click on NODES
and ITEMS.
<p>
I tried using GET_SELECTED_NODES, but it only works if the user selects the LOWEST level node/item.
<p>
Any advise will be appreciated.
<p>
Also, as an alternative, I was thinking of resizing TREE container to WIDTH of 1 when the user PRESSES
TREE OFF and resizing back to width 200 when the user presses TREE ON. I could not find any methods
that would work with CL_GUI_DOCKING_CONTAINER.
Please help! Thank you in advance.
<br>
<br>
<img src="http://img237.imageshack.us/img237/6684/bdccz3.jpg" border="0"/></a>
<p>
<p> -
How to use Tree control like a Tree in SAP HANA Live Browser?
Hello SDN!
I need a Tree control such as following:
As I understand, there is no such standard control in SAPUI5 control library. Is it possible to use this control? If yes, how I can embed it in my app?
Regards,
LevHi Sandip!
Thanks for your tip. I've applied this example to my app. Tree is working now, but this is a little problem - on each expand/collapse and click on treeItem the onAfterRendering() method called. It means that the complete rerender of tree executed which looks not good. How I can avoid this?
Lev
Maybe you are looking for
-
Sharing My Printer/Files Wirelessly
Hi, I have All-In-One (Lexmark X75) printer connected to my PC, Ive been trying to connect my Macbook to my printer wirelessly using Airport & Belkin Wireless G Router (802.11g 54G). At the moment Ive only manged to get the internet to work, any help
-
Account Tree suppression issue
Hello, My report has multiple sections, the group footer section showing account headers (acct type H) and account details (acct type R) and all amounts associated with these accounts. In the Section Expert of the Group Footer I conditionally suppres
-
Get this error: It appears that the feed has already been submitted
I have a podcast named Thorborgs Talkshow. It was listed in iTunes but Feedburner changed URL's and now I just can't find my show and when i submit my URL: http://feeds.feedburner.com/thorborgstalkshow I get the: It appears that the feed has already
-
Apps are switched after waking from sleep
When I close the lid, my MacBook Air goes to sleep, and when I open the lid again, it wakes from sleep. But it also switches apps after waking from sleep. Is there anything I can do to prevent this from happening? This has been discussed earlier, but
-
How to get rid of virus?
how do i get rid of, what i think is a virus in my iphone when i try to use safari?