how can show a help picture when mouse on a textbox.

how can show a help picture when mouse on a textbox.

ho-kou
Advocate Advocate
481 Views
3 Replies
Message 1 of 4

how can show a help picture when mouse on a textbox.

ho-kou
Advocate
Advocate

hi, everyone

 

I want to show a help picture when mouse on  a textbox like the picture.

eg. when mouse move on Tool Orientation, the help picture will be showed. 

Thank your for your help.

 

hokou_1-1699406308195.png

 

0 Likes
Accepted solutions (1)
482 Views
3 Replies
Replies (3)
Message 2 of 4

kandennti
Mentor
Mentor
Accepted solution

Hi @ho-kou -San.

 

For TextBoxCommandInput, it seems that HTML formatting tags can be used in the tooltipDescription property.

https://help.autodesk.com/view/fusion360/ENU/?guid=GUID-fd65f2ef-ad50-4888-900c-3daa169133a8 


I made a sample here.

# Fusion360API Python script

import traceback
import adsk
import adsk.core as core

_app: core.Application = None
_ui: core.UserInterface = None
_handlers = []

CMD_INFO = {
    'id': 'kantoku_test',
    'name': 'test',
    'tooltip': 'test'
}


class MyCommandCreatedHandler(core.CommandCreatedEventHandler):
    def __init__(self):
        super().__init__()

    def notify(self, args: core.CommandCreatedEventArgs):
        core.Application.get().log(args.firingEvent.name)
        try:
            global _handlers
            cmd: core.Command = core.Command.cast(args.command)
            cmd.isOKButtonVisible = False

            onDestroy = MyCommandDestroyHandler()
            cmd.destroy.add(onDestroy)
            _handlers.append(onDestroy)

            inputs: core.CommandInputs = cmd.commandInputs
            txtIpt: core.TextBoxCommandInput = inputs.addTextBoxCommandInput(
                'txtIpt',
                'test',
                '-',
                1,
                False,
            )
            txtIpt.tooltip = "tooltip"
            txtIpt.tooltipDescription = "<h1>tooltipDescription</h1>"

        except:
            _ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))


class MyCommandDestroyHandler(core.CommandEventHandler):
    def __init__(self):
        super().__init__()

    def notify(self, args: core.CommandEventArgs):
        core.Application.get().log(args.firingEvent.name)
        adsk.terminate()


def run(context):
    try:
        global _app, _ui
        _app = core.Application.get()
        _ui = _app.userInterface

        cmdDef: core.CommandDefinition = _ui.commandDefinitions.itemById(
            CMD_INFO['id']
        )

        if not cmdDef:
            cmdDef = _ui.commandDefinitions.addButtonDefinition(
                CMD_INFO['id'],
                CMD_INFO['name'],
                CMD_INFO['tooltip']
            )

        global _handlers
        onCommandCreated = MyCommandCreatedHandler()
        cmdDef.commandCreated.add(onCommandCreated)
        _handlers.append(onCommandCreated)

        cmdDef.execute()

        adsk.autoTerminate(False)

    except:
        if _ui:
            _ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))

 

The execution result is here. When the mouse cursor is hovered over TextBoxCommandInput for a certain period of time, tooltipDescription is displayed.

1.png

0 Likes
Message 3 of 4

ho-kou
Advocate
Advocate

hi @kandennti 

Thank you verymuch for your code.

0 Likes
Message 4 of 4

ho-kou
Advocate
Advocate

Succeeded to use toolClipFilename to show picture.