Using SYSTEM.MOUSE_ITEM In Oracle Forms
For example, if the mouse is in Item1 in Block2, the value for SYSTEM.MOUSE_ITEM is :BLOCK2.ITEM1.
SYSTEM.MOUSE_ITEM is NULL if:
· the mouse is not in an item
· the operator presses the left mouse button, then moves the mouse
· the platform is not a GUI platform
Example: Dynamically repositions an item if:
1) the operator clicks mouse button 2 on an item and
2) the operator subsequently clicks mouse button 2 on an area of the canvas that is not directly on top of another item.
/* Get the name of the item that was clicked.
item_to_move := :System.Mouse_Item;
the_button_pressed := :System.Mouse_Button_Pressed;
If the mouse was clicked on an area of a canvas that is not directly on top of another item, move the item to the new mouse location.
IF item_to_move IS NOT NULL AND the_button_pressed = ’2’
target_x_position := To_Number(:System.Mouse_X_Pos);
target_y_position := To_Number(:System.Mouse_Y_Pos);
target_x_position := NULL;
target_y_position := NULL;
item_to_move := NULL;