How to make sap.m.Text focusable? - sapui5

Simple problem in fact.
I am displaying some Text using sap.m or sap.ui.commons elements.
I cannot access any of them using the arrows (cursors).
I succeed navigating to input fields, rows in table but not Text.
I looked for any help on the net but without success.

if i grasp the question right, then the desire is to have a click event for sap.m.Text. I.e. a click on a sap.m.Text control triggers a event which leads to a method in the corresponding controller of the view in which the control sits.
sap.m.Text does not feature any click event by standard. instead please use sap.m.Link. sap.m.Link has the press event which is a click event. e.g. in a xml view:
...
<Link
text="clickMe"
press="onClickMethod">
</Link>
...

Related

How to make a SAPUI5 Custom Control accessible (focus handling)?

I am searching for a way to make a SAPUI5 custom control accessible. I build a kind of tile (based on a VBox control) and try to get this custom control accessible over keyboard (tab) or by clicking the mouse.
My idea was to implement sap.ui.core.Control#getAccessibilityInfo in my control, but this seems never be called. Currently I am trying to debug how other stuff is doing it like https://github.com/SAP/openui5/blob/master/src/sap.m/src/sap/m/ListBase.js but I can't find a way that works.
My control is currently placed inside a table, if I click on it the focus will be set to the table column. If I press tab-key it jumps to an input control inside my control.
My assumption, I miss something so that the control would be considered as focusable somehow.
I think that you are looking for ItemNavigation. VBox wasn't design to support keyboard navigation on it's content, but you could add a hook to onAfterRendering of your custom control, collect all dom refs you need to navigate on and pass them to ItemNavigation.setItemDomRefs.
If you need an inspiration you can have a look at sap.m.List implementation.
The important thing is to add oRM.writeAttribute("tabindex", "0"); // allows selection into the renderer of my own control. That allows to use the tab handling. Full code in a different question: How to copy&paste SAPUI5 controls by pressing Ctrl+C and Ctrl.V?
With this the control can be selected.
Also notice the this._bExcludeFromTabChain = false; in init section.

TAB key navigation for sap.m.Table

I have some data input fields inside a sap.m.table. Wanted to use Tab key to navigate to the input fields but it doesn't work.
It seems the SAP application interface hasn't implemented this feature.
I tried with some custom function and not working.
Any solution or alternative for this feature?
SAP itself now come up with the solution. Navigation with the TAB key is available form SAPUI5 version 1.44.
SAP NOTE 2387996 - SAPUI5 unable to use Tab to move to next field.
We have to press F2 key to activate this.
It's no longer necessary to use a custom solution for this. As of SAPUI5 version 1.38.0 sap.m.table has a property called 'keyboardMode' that can be set to 'Edit' which will change the tab behaviour to navigate focus through all editable fields in the table.
This mode is suitable if the number of items is limited and if there
are editable fields within the item.
While the last/first interactive element within an item has the focus,
pressing tab/shift+tab moves the focus to the next/previous element in
the tab chain after/before the item .
https://sapui5.hana.ondemand.com/#/api/sap.m.ListKeyboardMode
Attach browser event
new sap.m.Input({
value:"{first}"
}).attachBrowserEvent("keydown",function(oEvent){
if(oEvent.key == 'Tab'){
alert(this);//this reference to input control
//Your logic here
}
})
Sample JSBIN

Tracking form properties besides fields

I have a multi-page form, using a vertical tabs UI, in redux-form, and I'd like to track the current tab selection in the redux-form store.
What's the best way of doing this?
I would track the current tab selection outside of redux-form, but I've integrated redux-form with redux-undo, and I'd really like for undoing a form change to go back to the tab of the modified control.
I tried using a selected redux-form field, but this means that changing the selected tab marks the form as dirty.
From reading the docs, I could probably use reducer.plugin to add arbitrary properties to the redux-form store, but I don't see any documentation of which arbitrary property names are "safe," and I'd have to update the plugin for every form that should behave this way.
Any ideas?

way to give tooltip in remedy

We can able to create lot of fields and forms using remedy developer. i just wanted to know whether any options for giving tooltip to those fields so that users can better understand over the respective field.
For eg: If there is a field say price, say tooltip like decimal values accepted or something reasonable.
Try to edit fields' "Alternate Text" attribute for a small tool tip.
If you want a bigger one like in overview console table etc., run AL log and see which AL opens it.
Hover option is available for ARS 7.6 or later, and here are some info for you from BMC docs:
Using the message action to create tooltips
Tooltips are brief informational messages that are displayed in response to a user action with an object on the screen. Tooltips are commonly used to provide descriptions of menu items, toolbar buttons, or other objects.
In AR System, tooltips can be applied to tables, attachments, field labels, or field data.
A tooltip can be displayed either by hovering the mouse over an area in a form or by clicking an object such as a button. For table fields, a tooltip can be displayed by hovering over a row. The tooltip displays the values for the row being hovered over, even if that row is not the currently selected row.
When a tooltip appears by hovering, it is closed when the mouse is moved outside the tooltip's border. When a tooltip appears by clicking (for example, when a tooltip appears when you click a button), it is closed when you click anywhere outside the tooltip's border.
A tooltip also can be dismissed by pressing the Escape key.
Tooltips can include URL links, which can be added through a Set Fields action.
Implementing tooltips
Tooltips are implemented through two types of AR System features:
HOVER event
Active link Message action

MS Access 2003 - Simple value input into a text box from clicking label boxes

Ok so could anyone please help me out with the VB for auto entering information into a text box, by clicking certian label boxes on a form in access 2003.
I built this thing using label boxes as "sort of links" instead of button for navigation/commands etc, and I have this power point presentation viewer on one of the forms.
The client has numerous briefings and this will be great for me to provide a little something for them to be able to get their briefings from one spot.
So if I list the choices for the month out on the form as label boxes (with little mouse move events to resemble a web link) and they click on it to select, then the only way I know how this may become functional is if I add a text box to the form, and make it not visible, that way I can name it, and add it to the file path string and it works.
But how do I create the action of clicking the "link" result in "NVOWEFDJHF" into text box?
Anyone know a better way?
Yeah I am an amateur, so I am ALWAYS willing to learn a better way.
Thanks very much!
I would recommend using a transparent button instead of a label.
The main reason is that you can set the mouse cursor to become a small hand when you hover over the button, so it gives back information to the user that this can be clicked.
With a label, the user cannot make the difference between a normal label and one that can be clicked since there is no visual cue.
To create a button that resemble a label:
Add the button to the form
In the properties for the button, set the following:
Format > Back-Style: Transparent
Other > Cursor on Hover: Hyperlink Hand
Other > Name: btAutoFill (or whatever name you want)
If you want the button to resemble a link a bit more, you can change it's caption's format, making it blue and underlined if you wish.
Now if you view the form, you will see that the mouse cursor will change when you move over the 'button label'.
To automatically fill-in other controls when you click your button, add the code to handle its OnClick event (in the button's properties, under Events > On Click, choose [Event Procedure]):
Public Sub btAutoFill_Click()
myTextBox = "NVOWEFDJHF"
End Sub
Quick air code here...
Private Sub MyLabel_OnClick()
Me.MyTextBox = "NVOWEGDJHF"
End Sub
Don't forget your error handling.
You're making this as difficult as possible by using an approach that is not Access-native. The simplest way to make the labels "clickable" is to put a transparent command button over them. But that means the MouseMove events will go to the command button, so you'll have to have its events do the MouseOver actions.