I don’t know that it’s the best way but we have several components that can be double-clicked to copy their values to the clipboard. To let the user know that the double-click was successful I briefly change the cursor to the “busy” cursor and then back again. That script is on a timer on each page that has double-click copy enabled.
This is the script in the change cursor timer.
event.source.running = 0
c_code = event.source.parent.cursorCode
event.source.parent.cursorCode = 3
def delay(event=event,c_code=c_code):
import time
import system
time.sleep(.5)
def finished(event=event):
event.source.parent.cursorCode = c_code
system.util.invokeLater(finished)
system.util.invokeAsynchronous(delay)