Is there a way to set a EditField as ready to accept input in app designer?

10 次查看(过去 30 天)
I am using App Designer to make an EditBox with user text input. I would like to user to be able to select the app and begin typing without the need to select the EditBox. Is there a way to have the code select the EditBox to enable it to be ready for user input?

采纳的回答

Ameer Hamza
Ameer Hamza 2018-5-9
编辑:Ameer Hamza 2018-5-9
It appears that this functionality has still not been added to App Designer. Anyway here is a bodge that can bring an edit field to focus. The idea is to send automatic TAB key presses to the app window. Since you can manually bring an edit field to focus by pressing TAB key several times, you can automate this as follow
import java.awt.*;
import java.awt.event.*;
rob = Robot;
rob.keyPress(KeyEvent.VK_TAB)
rob.keyRelease(KeyEvent.VK_TAB)
rob.keyPress(KeyEvent.VK_TAB)
rob.keyRelease(KeyEvent.VK_TAB)
these line of code will simulate 2 TAB key presses. Since it is a bodge, at the time of coding, you will have to use hit and trial approach to determine how many tab presses are needed to reach a particular edit field. I have attached a sample app. When the app start, it force editfield1 to get focus. After that, whenever button1 is pressed, editfield1 will be focused and button2 will bring editfield2 to focus. You can look at the Code View to get a further idea.
  9 个评论

请先登录,再进行评论。

更多回答(1 个)

Adam Danz
Adam Danz 2022-4-5
Update
Starting in MATLAB R2022a.
Use the new focus(c) function to set focus to a ui component c. This MATLAB release also provides additional resources to control the focus order of ui components in AppDesigner.
More info

类别

Help CenterFile Exchange 中查找有关 Develop Apps Using App Designer 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by