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

조회 수: 21(최근 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

Community Treasure Hunt

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

Start Hunting!

Translated by