The SelectionChanged event has different arguments for different objects:
Object |
See |
---|---|
DropDownListBox, DropDownPictureListBox, ListBox, PictureListBox controls |
|
Tab control |
|
TreeView control |
Occurs when an item is selected in the control.
Event ID |
Objects |
---|---|
pbm_cbnselchange |
DropDownListBox, DropDownPictureListBox |
pbm_lbnselchange |
ListBox, PictureListBox |
Argument |
Description |
---|---|
index |
Integer by value (the index of the item that has become selected) |
Long. Return code choices (specify in a RETURN statement):
0 Continue processing
For DropDownListBoxes, the SelectionChanged event applies to selections in the drop-down portion of the control, not the edit box.
The SelectionChanged event occurs when the user clicks on any item in the list, even if it is the currently selected item. When the user makes a selection using the mouse, the Clicked (and if applicable the DoubleClicked event) occurs after the SelectionChanged event.
This example is for the lb_value ListBox in the window w_graph_sheet_with_list (in the PowerBuilder Examples application). When the user chooses values, they are graphed as series in the graph gr_1. The MultiSelect property for the ListBox is set to true, so index has no effect. The script checks all the items to see if they are selected:
integer itemcount,i,r
string ls_colname
gr_1.SetRedraw(FALSE)
// Clear out categories, series and data from graph
gr_1.Reset(All!)
// Loop through all selected values and
// create as many series as the user specified
FOR i = 1 to lb_value.TotalItems()
IF lb_value.State(i) = 1 THEN
ls_colname = lb_value.Text(i)
// Call window function to set up the graph
wf_set_a_series(ls_colname, ls_colname, &
lb_category.text(1))
END IF
NEXT
gr_1.SetRedraw(TRUE)
Occurs when a tab is selected.
Event ID |
Objects |
---|---|
pbm_tcnselchanged |
Tab |
Argument |
Description |
---|---|
oldindex |
Integer by value (the index of the tab that was previously selected) |
newindex |
Integer by value (the index of the tab that has become selected) |
Long. Return code choices (specify in a RETURN statement):
0 Continue processing
The SelectionChanged event occurs when the Tab control is created and the initial selection is set.
Occurs when the item is selected in a TreeView control.
Event ID |
Objects |
---|---|
pbm_tvnselchanged |
TreeView |
Argument |
Description |
---|---|
oldhandle |
Long by value (the handle of the previously selected item) |
newhandle |
Long by value (the handle of the currently selected item) |
Long. Return code choices (specify in a RETURN statement):
0 Continue processing
The SelectionChanged event occurs after the SelectionChanging event.
This example tracks items in the SelectionChanged event:
TreeViewIteml_tvinew, l_tviold
// get the treeview item that was the old selection
This.GetItem(oldhandle, l_tviold)
// get the treeview item that is currently selected
This.GetItem(newhandle, l_tvinew)
// Display the labels for the two items in sle_get
sle_get.Text = "Selection changed from " &
+ String(l_tviold.Label) + " to " &
+ String(l_tvinew.Label)