DEV Community

Ramon Sanchez Belillas
Ramon Sanchez Belillas

Posted on

2

How to trigger tab (InputText) in Microsoft Power Apps

I've recently faced a couple of issues while developing with Power Apps, I haven't been able to find solutions to them on the internet (the closest workaround I've found is to add a timer with a timeEnd which seemed a bit odd to me) so I've developed my own solution, but let's explain the issues first:

Problem 1:

  1. In a formatted text field.
  2. you add a value (let's say 1000).
  3. The onChange event is triggered.
  4. The field is formatted to 1,000.00.
  5. The formatted value gets injected to the field.
  6. Edit the input field adding 1000 again.
  7. The onChange event doesn't trigger because it considers it "the same".

Problem 2:

  1. When you press tab in input field and go to another input field
  2. The onSelect is not activated because you have to "Click"

SOLUTION:

We need to create two text inputs and one button like that:

InputText 1:

  1. Create an input text (inputText1)
  2. onChange:
   Set(ChangeNumberVar;
       Text(
           Value(TextInput1.Text);"#,###.00";"ca-ES"
       )
   );;
   Select(Button1)
Enter fullscreen mode Exit fullscreen mode

(nextStep) 3. Default:

   ChangeNumberVar
Enter fullscreen mode Exit fullscreen mode

(nextStep) 4. tabIndex: 1

InputText 2:

  1. Create another input text (inputText2)
  2. tabIndex:3

Button1:

  1. Create a button (button1)
  2. tabIndex:2
  3. Visible: false
  4. onSelect:
   Reset(TextInput1);;
   SetFocus(TextInput2)
Enter fullscreen mode Exit fullscreen mode

Image at the end of creating the solution

Now you can switch from inputText1 to inputText2 by triggering the OnSelect trigger using the tab key.

Side Notes:

The main language on my environment is spanish. If the provided solution doesn't work for you, please leave a comment and we can take a look at your specific use-case 😁

Best regards!

Image of Timescale

🚀 pgai Vectorizer: SQLAlchemy and LiteLLM Make Vector Search Simple

We built pgai Vectorizer to simplify embedding management for AI applications—without needing a separate database or complex infrastructure. Since launch, developers have created over 3,000 vectorizers on Timescale Cloud, with many more self-hosted.

Read more

Top comments (1)

Collapse
 
msvanred profile image
Markus

Thanks a lot for sharing.
Especially the missing "onselect" when using Tabs switchen between controls helped a lot!

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more