Powerbuilder: Multiline edit events - sybase

I need to enable the command button after the user edit changed the Multi line edit control.
I tried with few EVENT ID , but it didn't work for me.
What is the best way to obtain the edit change event in the Multi line Edit control.
I don't find edit change event MLE control, please help.

There is 2 events that you can consider in your case:
pbm_enchange: each time the user is typing a character
pbm_enmodified: once the edit is loosing focus, as a global final modification notification

Related

Winform - multi line Textbox changes scroll position on refresh

I have a winform application that has a textbox, multiline, readonly where I display a kind of log that is refreshed each second. The text box can have more than 100 lines of text.
On each refresh, if the user scroll and selection are lost.
I need a way to allow to the user to keep the scroll and selected text.
I tried to replace only the line that changes - didn't work (using Lines property)
I tried to save the selection before update and re-select it after - didn't work.
I tried to use RichTextBox instead - didn't work.
Anyone did something like this before? Is any library (custom control) I can use instead?
Thank you.

Custom OSD Keyboard suggestion

I tryed this example with two type of fields with style MaterialDesignFloatingHintTextBox and MaterialDesignFloatingHintPasswordBox, but I noticed that when the event get is triggered the popup is showed correctly but when I go to the popup to press one of the button, the lost focus event of the text field is triggered and the popup is closed :/
My question is that do you know some solutions? Or do you know some osd keyboard that works with the materialdesignxamltoolkit?
Finally I solved the problem:
is not a problem of user controls or xamltoolkit, but only a focus problem, so setting property Focusable = false in the button and other controls in the old keyboard works very well.
I hope that this post can be useful to someone that have my same problem.
Cheers
Franco

How to allow/stop an event based on a condition like YES or NO?

I need to allow or stop an event from happening, based on a given condition such as a pop up box with options YES, NO and CANCEL.
I need to notify the user saying that there are unsaved data and if the user wishes to SAVE it, IGNORE it or CANCEL his current action(event such as Selection-change or Click).
I tried to use createInterceptor() function. But could not achieve the functionality.
Can anybody give me some suggestions with example? Basically I want to know how to stop an event.
Thanks..
Edited
I like the idea of using beforeXXX events. But I am still facing problems. As I mentioned, I need to ask the user if he wishes to save the unsaved data, which is a popup message box (With options YES, NO and CANCEL) that runs asynchronously. So by the time I get a reply, the event will have happened.
For ex. lets imagine a situation where, there is a page that displays a list of records in a grid with a pagination toolbar attached to it on the bottom(with a page size of 10 and total number pages is 10. So totally 100 records) on the left hand side. If you select a record in the list, the details are shown in a detail view on the right hand side.
Now,
I select third record in the list and make some changes to it in the detail view(form).
Without saving the record, I click on next page button on the Pagination toolbar.
It will show a confirm box from the beforeXXX event of Pagination toolbar, but the event will have happened anyway.
Here if the user clicks on CANCEL, I will have to restore the previous state which is already gone. Somehow I will have to go back and select the third record in the list of previous page.
So in order to resolve this problem, if I return false from my beforeXXX event, the next XXX event will be not be triggered.
But if the user clicks on YES or NO options I will have to trigger the event XXX manually which I am unable to do it for a selection-change event as of now.
Like this there can be many operations like list-filtering, searching, Ordering(A-Z/ Z-A), logout etc. For each of this operation I will have to write customised code which totally spoils the readability of the code.
So I was thinking if there is way to, somehow manually trigger the event XXX by holding the event object in beforeXXX...or is there any other way to restore the previous state.
Please give me suggestions....Thanks...
Many events have their "before-" counterpart, for example "beforeactivate". If you return false from this kind of the processing stops.
If not, or if your event does not have it's before- part, then you can use event object passed to all event handlers and call:
ev.stopEvent();
ev.stopPropagation();
return false;
at the end of your handler.

Form elements are not receiving input

I have a form designed with the GUI designer with input textfields and buttons. I have attached actions to the buttons. When I call up the form with showForm(Form,null), the textfields are not accepting input and the buttons are not triggering the action. This is happening only for this form. Initially, there was the problem solved here Unable to call a specific form from a button in codenameone and then the problem solved here Simulator keeps defaulting to old Main form. What could be the issue now?
As far as I know there may be some issues as you say, but first need to see code
In the form after you added the text fields did you select the text field component and press action event?
Assuming you did that you should get a callback method in the Statemachine class.
This call will be invoked only when the user changes the content of the text field. You can run in the debugger and set breakpoints/step into code to see what is going on.

Datagridview Cellclick event

Im using VB 2010. I have a StudentsDatagriview on my form.
When a user clicks the Columns Header to change the sort of data the StudentsDataGridView_CellClick event also fires.
In the StudentsDataGridView_CellClick event, I have lots of code to be done and so I just want them to be done when the user clicks the cell, not column header. Do you have any ideas?
You may use StudentsDataGridView_CellContentClick event, pal.

Resources