[JS CS5] ScriptUI: changing position of cursor in EditText control

Is there a way to change the position of the cursor in an EditText control? I've played around with the textselection property, but with no luck in getting the cursor between the right characters.

Hi JJ Fulks,
ScriptUI does not allow to directly change the position of an EditText's cursor but there is a trick to emulate this by successively setting text and textselection.
As far as I remember—I cannot test this now, sorry—if you want to get aaaa•bbbb (where • represents the cursor location), you need to do:
myEditText.text = "bbbb";
myEditText.textselection = "aaaa";
(or something similar).
@+
Marc

Similar Messages

  • Play option after change position of cursor

    I would like to ask for something. This function is VERY IMPORTANT to me.
    When we push "PLAY" and then we click to another section of our clip, a clip is stop playing immediately.
    I don't want this. I want when I click "PLAY" button and then I start to click to forward/backward section of my clip, clip is still playing.
    Can we change it? It is VERY IMPORTANT. Because it makes my work very slow....
    This behaviour is in EVERY menu, every windows, every workflow in Premiere Pro.

    OK, let's try this again. Please follow these steps and tell me if the space bar works for you.
    1. Set in and out points on a 30 minute clip in the Source monitor, about a minute apart.
    2. Press the "Play In to Out" button.
    3. After seeing that your in point is where you want it you skip the CTI over to something close to the end point with a mouse click. After all, you don't need to see the whole thing. The video stops playing so you hit the space bar.
    Wait a minute. It keeps going past the out point! What the HE double hockey sticks is THAT all about?
    Oh, wait, if you had a modifier for your mouse click it would obey the original in-to-out command, wouldn't it?
    Ah! All I have to do is press Ctrl-Space. But that means I have to click on the timeline, then hit Ctrl-Space. It would be a heck of a lot easier to hit Ctrl-Click now wouldn't it?
    Does that help explain it? All I want to do is to Ctrl-Click the CTI over to where I want it to start again and have it play. I don't consider that unreasonable. Why should I have to click, then hit a keyboard combination when a modifier for the click would be faster?

  • Positioning the cursor on a control in batch input

    Campus Management, transaction PIQ_ACCATLG
    In order to create a business event or event type you have to first select the the Module object from the tree list displayed on the screen.  However, the fields in the tree list do not get recorded using SHDB and a BDC_CURSOR record is not generated.  Also, pressing F1 on these fields does do anything.
    Is it possible to place the cursor within the tree list in batch input?  If so, how is it done?

    You should be posting this question in the ABAP forum.
    Message was edited by: Mark Finnern
    Moved the thread.

  • Set the cursor on table control

    Hi All,
    I am trying to create a table control.
    Creation of table control is fine and i can update and save the records..But i am facing some strange problems.
    When i close my program and rerun it, the Cursor will be position on the default field of last run.
    How can we position the cursor on table control..Say to a particular row or columns?
    Also i am not able to interpret the meaning of
    Loop at itab with control control name cursor top_line/current_line.
    Does this means that if you use top_line, cursor will be placed at the top line and when you use current_line , it will be placed at current line?
    Regards
    Miesh

    Hi,
    Check this link for sample code for Table Control
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.highlightedcontent?documenturi=/library/webas/abap/abapCodeSamples/TableControlin+ABAP.pdf
    http://members.aol.com/_ht_a/skarkada/sap/table_control/table_control.htm
    Re: Table Control
    Thanks & Regards,
    Judith.
    Message was edited by: Judith Jessie Selvi

  • LV7: how to catch 'Value change' event for cursor position in XY graph?

    I try to catch an event when the cursor position of a graph's cursor
    changes. I created a reference for the cursor array and registered a dynamic
    event 'Value change' for it. The event does not fire when the cursor changes
    (either by dragging it with the mouse or by direct entry of a new value in
    the cursor's X or Y fields. In contrast, when I register e.g. the 'Mouse Up'
    event for the cursor array, the event IS detected.
    -Franz

    So this is the same behaviour as that of a regular control which also does
    not fire a 'Value changed' event when it gets updated by e.g. writing to a
    local.
    At least the cursor's behavior is consistent then...
    But unfortunately also the direct user interaction with the cursor's numeric
    field does not fire the event, which is NOT consistent.
    I was trying to catch cursor changes in my event loop and had used a 'Mouse
    Up' event of the graph indicator to look for cursor changes (whose last
    position I had kept in a local or shift reg). In order not to miss a direct
    user interaction in the numeric field I added the dynamic event 'Value
    change' to the same event case, but with no success, it missed the direct
    entry ...
    according to what you say this seems to b
    e a bug then...
    -Franz
    "Greg McKaskle" schrieb im Newsbeitrag
    news:[email protected]..
    > > I try to catch an event when the cursor position of a graph's cursor
    > > changes. I created a reference for the cursor array and registered a
    dynamic
    > > event 'Value change' for it. The event does not fire when the cursor
    changes
    > > (either by dragging it with the mouse or by direct entry of a new value
    in
    > > the cursor's X or Y fields. In contrast, when I register e.g. the 'Mouse
    Up'
    > > event for the cursor array, the event IS detected.
    > >
    >
    > The reason is that value change events fire when user action directly on
    > the control changes its value. They do not fire when other programmatic
    > value changes occur. If you are looking at a value change on the cursor
    > palette, user interaction with the numeric should fire it, but updates
    > due to cursor movement are more like programmatic updates.
    >
    > Additional events will likely be added in future
    releases, and these may
    > make it easier to catch cursor movement events on a graph.
    >
    > Greg McKaskle
    >

  • [CS4/CS5] ScriptUI focus event (Win/Mac)

    Hi friends,
    I'm looking after a way to control the focus of EditText widgets within a Dialog but I'm totally confused by the event loop logics —especially in Mac OS.
    The basic task I need to achieve is to attach a validation mechanism to an EditText. When the user has entered a wrong field and the change event occurs, I want to display an alert box, then re-activate the field. The problem is that both the change event and the alert box interfer with focus attribution. I think that user or system focus/blur events are stacked so that any command that attempts to focus back to the original widget cannot work while the stack is not empty.
    Here is a simple test to illustrate my problem. The script is supposed to display an alert when the user change a field, then it tries to focus back to the corresponding field through myWidget.active = true. This does not work.
    var     u,
         w = new Window('dialog',u,u,{xname:'Window'}),
         e1 = w.add('edittext', u, "",{xname:'EditText (1)'}),
         e2 = w.add('edittext', u, "",{xname:'EditText (2)'}),
         eInfo = w.add('edittext', [0,0,300,400], "",{xname: 'EditText (Info)', multiline:true}),
         b = w.add('button',u,'Clear', {xname:'Button'});
    e1.characters = e2.characters = 20;
    var anyEvent = function(ev)
         var tg = ev.target;
         eInfo.text += (tg.properties.xname + ' -> ' +
              ev.type.toUpperCase() +
              (tg.active ? '  (active)':'  (non active)') +
              '\n');
    var changeEvent = function(ev)
         eInfo.text += ('\n--- BEFORE Breaking Alert\n');
         alert("Breaking alert");
         // Trying to FOCUS back on ev.target
         eInfo.text += ('\n--- BEFORE Active=true\n');
         ev.target.active = true;
         eInfo.text += ('--- AFTER Active=true\n');
    // Event 'inspector'
    w.addEventListener('change', anyEvent);
    w.addEventListener('focus', anyEvent);
    w.addEventListener('blur', anyEvent);
    // Events
    w.addEventListener('change', changeEvent);
    b.onClick = function(){eInfo.text = '';};
    w.show();
    I tried various strategies to address this problem by using event timestamps and/or dispatching custom new UIEvent('focus'...), but nothing works conveniently.
    In addition I got odd behaviours in Mac OS. The below screenshot shows a piece of a ScriptUI dialog —using a custom framework, so don't be surprised by the skin! What is weird is that in a particular state *two* EditText controls have the focus ring at the same time:
    I didn't know such a thing could happen. I probably did not understand anything about the 'focus' paradigm.
    Any help from an expert would be greatly appreciated. Thanks a lot!
    @+
    Marc

    Harbs. wrote:
    It does seem to change the focus, but you are still left with a cursor sometimes (which does not work).
    The one that has the focus rect allows input and .active = true seems to work fine. (Mac 10.6 CS5)
    Harbs
    Well, this is not so clear to me. My beta-tester —also Mac CS5— reports unpredictable behaviors. It also depends on how the user change the focus: using the TAB key and clicking into another field are not equivalent. (It seems that the change-focus-by-click event is more complicated to counteract...)
    But generally, on Mac platforms, we cannot be sure that setting myEditText.active = true gives the focus back to myEditText when other user events are running. The problem is that the active property is not always 'reliable'. We found that (under unstable circumstances) e1.active might returns true while e2 actually owns the focus ring! Somehow, Mac systems can dissociate the 'active' control and the focus... I don't know.
    My assumption is that the focus has a high level priority in the Mac event loop and that it closely mirrors the user interaction, while the active property is an abstract thing featured by the ScriptUI layer. The purpose of ScriptUI is to wrap OS events and widgets in a single scripting interface for both Mac and Win, but ScriptUI is nothing but a bridge. I suppose that "myWidget is active" and "myWidget has the focus" means exactly the same thing in Windows, so ScriptUI can easily target the focus through the active property in Win environment. But Mac OS doesn't work the same way.
    Interestingly when we set an EditText as borderless in Windows, we entirely remove the default widget appearence. On the contrary, a borderless EditText in Mac still reserve an additional region for the focus and there is no way to hide the focus ring when the control receives the inputs.
    In addition, I posted above a screenshot where two EditText instances have the focus ring at the same time. I'm not a Mac user but I was told that this is not a normal situation. Then playing with the active property in ScriptUI can really disrupt the focus behavior on Mac platforms...
    My first idea was to study more closely event triggering and to use a timestamp-based routine to keep the control of the focus. So I sent the following script to my beta-tester:
    var     u,
         w = new Window('dialog',u,u,{xname:'Window'}),
         e1 = w.add('edittext', u, "aaa",{xname:'(1)'}),
         e2 = w.add('edittext', u, "",{xname:'(2)'}),
         eInfo = w.add('edittext', [0,0,300,400], "",{xname: '(Info)', multiline:true}),
         cForce = w.add('checkbox', u, "Force default value on error"),
         b = w.add('button',u,'Clear', {xname:'(Button)', name:'ok'});
    e1.characters = e2.characters = 20;
    var fgTarget = null,
         fgTimeStamp = +new Date,
         fgAlerting = null,
         fgNonValid;
    var blurEventHandler = function(ev)
         if( fgAlerting ) return;
         var d = +new Date - fgTimeStamp;
         if( 100 < d )
              eInfo.text = '';
              fgTarget = ev.target;
              fgTimeStamp = +new Date;
              fgAlerting = null;
              fgNonValid = isNaN(fgTarget.text);
         d += ' ms';
         eInfo.text += (ev.target.properties.xname + ' is losing the focus  ' + d + '\n');
         fgTarget.active = true;
         if( fgNonValid )
              eInfo.text += ('  Re-activate ' + fgTarget.properties.xname +
                   ' from '+ ev.target.properties.xname + '\n' +
                   '  w.active=' + w.active + '\n' +
                   '  e1.active=' + e1.active + '\n' +
                   '  e2.active=' + e2.active + '\n') ;
              if( null===fgAlerting )
                   fgAlerting = true;
                   eInfo.text += '--- ALERT ---\n';
                   alert("Please enter a numeric value or let the field empty.");
                   fgAlerting = false;
                   if( cForce.value ) fgTarget.text = '50';
                   fgTimeStamp = +new Date;
    e1.addEventListener('blur',blurEventHandler);
    e2.addEventListener('blur',blurEventHandler);
    var anyEventHandler = function(ev)
         eInfo.text += (ev.target.properties.xname + ' -> ' + ev.type + '\n');
    e1.addEventListener('mousedown',anyEventHandler);
    e1.addEventListener('mouseup',anyEventHandler);
    e1.addEventListener('keydown',anyEventHandler);
    e1.addEventListener('keyup',anyEventHandler);
    e2.addEventListener('mousedown',anyEventHandler);
    e2.addEventListener('mouseup',anyEventHandler);
    e2.addEventListener('keydown',anyEventHandler);
    e2.addEventListener('keyup',anyEventHandler);
    b.onClick = function(){eInfo.text='';}
    e1.active = true;
    w.show();
    This script gives unstable results. ScriptUI does not always report every event that actually occurs.
    But as a general rule, what the user has done supersedes what the script can do.
    Any help from ScriptUI / Mac gurus would be highly welcome.
    @+
    Marc

  • Is there anyone there? I hope there is someone who can you understand this problem and have the common sense to respond?  I open gmail. I want to save an email to one of my folders. I position my cursor over the appropriate Folder icon or by choice, to th

    Is there anyone there? I hope there is someone who can you understand this problem and have the common sense to respond?
    I open gmail. I want to save an email to one of my folders.
    I position my cursor over the appropriate Folder icon or by choice, to the Trash.
    The friendly finger pointing cursor icon changes to an arrow icon.
    The hand icon allows me flawless access to opening and/or moving emails.
    The arrow, however does not open the link.
    On the Google menu bar the cursor hand with finger opens the links to Everett (my name), Search, Images, Maps and Play.
    When I attempt to open the remaining links in the menu bar (YouTube, News, Gmail, Drive, Calendar and More) the arrow icon replaces the hand. The arrow icon does not work. It will not activate these links.  Nor does it open email messages in the Inbox.
    Usually I reset, even reboot Safire and sometimes the problem goes away, then reappears.
    Can you imagine if this condition should it happen to a tech savvy Google Support person? Perhaps one can share and make my problem go away.
    I am considering dropping Google as my mail source. Unfortunate!
    Everett Halvorsen
    [email protected]
    718.490.3824

    I have uninstalled my Access Connection, but this problem seems to persist. IBM technician have changed the wireless card of my T60, the first few days after it was changed was very fine, no problem at all. About a week later, the problem occured again, and it happened quite frequently after that occurence. Now i really have no idea what is the cause and how to solve it. Will be greatful if there is anyone that can help me.

  • Agent Assignment showing error "Please position the cursor correctly"

    Hi Friends,
    I have a strange problem that has come up suddently in the development client. The "Agent Assignment" which was happening earlier is not working anymore. Instead it is showing an information message "Please position the cursor correctly". I am doing the agent assignment the same way i used to do it earlier but its not happening. I tried changing the agent assignment for most of the task types including the "Activity" task, "Decision" task. But nothing seems to work....
    The agent assignment is happening in Sandbox client but not in Development client.
    Is it some BASIS side settings ?? What may be the exact cause ??
    Please help.
    Thanks,
    Shashank Shirali

    You do not have the proper authorization to do the agent Assignment. Take a SU53 dump and you will find our which authorization is missing and ask the Security folks to provide the authorization.
    Thanks
    Arghadip

  • Position the cursor on an ENHANCEMENT statement .ED301

    Hello Folks ,
    I am changing an ENHANCEMENT and did a syntax check. the syntax check failed.
    Editting is now locked out and when I place the cursor on the Enhancement statement and go to Edit > Enhancement Operations > Change Enhancement.
    the "Position the cursor on an ENHANCEMENT statement" error statement appears even though the cursor was there.
    I tried to "UNDO" the Enhancement So that I could put the correct code in. But,the same syntax error appears even though the bad code is not on the screen.
    Has anyone else encountered this problem?

    Hi Harel Gilor,
    In that case you can delete/change that enhancement point by going to node Enhancements under your package name in SE80>Package>Enhacements.
    Thanks & Regards,
    Faheem.

  • Can i position my cursors in a mixed signal plot with my mouse?

    i can move the cursor in the plot via the cursor controls with no problem. but it's a very slow and arduous process. i'd like to be able to just grab the cursor with the mouse and position it where i want to.
     i can grab the cursor with my mouse now, but when i move it, it's like the cursor is locked to the position on the plot and moves the whole plot, which i don't want to do. 
     i just want to be able to position the cursor a little faster or quicker than with the left/right/up/down buttons that are avialable now. it would be great to be able to click my mouse at a point in the plot, and snap the cursor to it, or just grab the cursor and put it where i want to. 
     if anyone has any helpful suggestions or hints, i'd appreciate it.
     i'm running labview 8.6 on vista and xp.
     thanks for your help,
    chip
    Solved!
    Go to Solution.

    james and baji,
     thanks for your input, but i guess i'm not very clear in my question. first of all i don't see a cursor locked property to use, so i'm a bit confused on that point.
     but my problem is, i'm using a mixed signal plot, it has say three plots on it. the scales for the x is 1435 to 1455 while the y scale is 0 to 500. there are three plots displayed. using the cursor control buttons (the four diamond pattern controller for up, down, left right) i can position the cursor crosshairs at any point on the displayed plot window, whether on a plotted point or anywhere on the displayed scale. 
     but when i grab the cursor, and move it anywhere, i move the whole display along with the cursor, and all my scales change on the plot window accordingly to where i grab the cursor and move it. but the cursor stays locked onto that spot and the plot area moves. what i want to do is have the plot area stay where it is, and move the cursor only, not the whole plot.. 
     what i'm trying to do is pick an xy coordinate with the cursor and write that point to a file. i can do that using the cursor control buttons, the cursor moves freely anywhere in the plot window, even though it takes a long time (holding the shift key speeds up the cursor).
     unfortunately, i can't download any of the demo vi's you guys have left, my firewall won't let that happen. 
     thanks for your help though,
    chip

  • Event for a change in the cursor legend

    Hi!
    I need to recognize a change of the cursor properties by the user through the XY-Graph Cursor Legend! (i.e. changing cursor color)
    There seems to be no event for that in my event structure (although there is a event for changing the plot properties through the plot legend).
    I'm using LV2009SP1.
    Greets CtheR

    I need the recognize any change of the cursor props made by the user. Like that:
    Watching the cursor-Property for a change would be no help because there are automatic changes that I do not want to catch.
    Something similar to the plot attribute change event in an event structure would be most helpful:
    Greets CtheR

  • How to change position for items in shopping cart

    Hello,
    I am creating shopping cart using flat file. But i am not able to change the position for items i.e. both items contain position as 0000000001.
    Following are the item details of shopping cart which is created through portal. (from tcode BBP_PD)
    Items:
    Pos Type Quantity Unit Ordered_Prod Description Gross price
    0000000001 1 EA keyboard 100,00
    0000000002 1 EA CPU 1.000,00
    Following are the item details of shopping cart which is created using flat file & BAPI BBP_PD_SC_CREATE.(from tcode BBP_PD)
    Items:
    Pos Type Quantity Unit Ordered_Prod Description Gross price
    0000000001 1 EA MONITOR 1,00
    0000000001 1 EA MONITOR 1,00
    Position is not getting changed for item 2 & only first record is getting uploaded 2 times. My code is creating Shopping cart number .
    Please tell me how to change position of each item.
    Thanks & regards,
    Edited by: Ketkee Bhale on Sep 14, 2011 3:58 PM

    Moderator message - Cross post locked
    Rob

  • How to position the cursor in a text

    I there a better way to position the cursor in a text portion other than trying it several times until the OS picks the right space? I know the iPad has a good way to do it by zooming in.
    Or is RIM working on it.....

    I've been pretty successful at getting the cursor to hit where I want in text entry boxes.
    Maybe some more practice will make perfect. Worked for me, until I got used to,and then again maybe my using a touchscreen smartphone, the process just comes second nature for me.
    1. If any post helps you please click the below the post(s) that helped you.
    2. Please resolve your thread by marking the post "Solution?" which solved it for you!
    3. Install free BlackBerry Protect today for backups of contacts and data.
    4. Guide to Unlocking your BlackBerry & Unlock Codes
    Join our BBM Channels (Beta)
    BlackBerry Support Forums Channel
    PIN: C0001B7B4   Display/Scan Bar Code
    Knowledge Base Updates
    PIN: C0005A9AA   Display/Scan Bar Code

  • Error in TCode iview Select a line or position the Cursor correctly

    Hi All,
    I am getting the below error while selecting the row in Tcode iview
    Select a line or position the Cursor correctly.
    You have not selected a delivery or a delivery item for processing and the cursor is not positioned on a valid line, even after i am
    selecting the Delivery and click on the execute button
    My system config  :
    NW04s SP 20
    Thanks&Regards
    Murthy

    Hi Murthy,
    Create the Iview again.Hope the issue will resolve.
    Thanks,
    Arun

  • How to position the cursor at the end of the text with EDIT_TEXT?

    Hello, it wanted to ask to them if somebody could make work the module of function EDIT_TEXT so that it positions the cursor at the end of the text that is visualizing in the text editor. In the documentation it says that passing a ' X' to him in the field scrollend of the parameter Control is obtained that operation. Nevertheless, I did this and the cursor continues appearing at the beginning of the text that visualizes.
    Somebody could help me please?
    Regards,
    Gabriel
    PD: The code that I use is the following one:
    FORM f_ingresar_comentarios.
    DATA: l_action,
    l_result LIKE itcer,
    l_pedido LIKE thead-tdname,
    li_coment_save LIKE i_comentarios OCCURS 0,
    li_coment_aux LIKE i_comentarios OCCURS 0 WITH HEADER LINE,
    l_lines TYPE i,
    l_lines_save TYPE i,
    l_lines_insert TYPE i,
    l_index TYPE i,
    l_index_aux TYPE i,
    l_insert,
    lwa_control LIKE itced.
    CLEAR: l_action.
    CLEAR i_comentarios.
    REFRESH: i_comentarios,
    li_coment_save,
    li_coment_aux.
    l_pedido = v_pedido.
    Leemos el texto si es que existe
    CALL FUNCTION 'READ_TEXT'
    EXPORTING
    client = sy-mandt
    id = v_id_text
    language = sy-langu
    name = l_pedido
    object = c_ekko
    IMPORTING
    header = wa_cabecera
    TABLES
    lines = i_comentarios "Lineas de texto leídas
    EXCEPTIONS
    id = 1
    language = 2
    name = 3
    not_found = 4
    object = 5
    reference_check = 6
    wrong_access_to_archive = 7
    OTHERS = 8.
    IF sy-subrc <> 0.
    Armamos la cabecera por primer comentario para el pedido
    CLEAR wa_cabecera.
    wa_cabecera-tdobject = c_ekko. "Objeto en tabla TTXID
    wa_cabecera-tdname = v_pedido. "Nro de pedido
    wa_cabecera-tdid = v_id_text. "ID en tabla TTXID
    wa_cabecera-tdspras = sy-langu. "Lenguaje
    wa_cabecera-tdlinesize = 70.
    ENDIF.
    Salva comentarios originales
    li_coment_save[] = i_comentarios[].
    lwa_control-scrollend = c_x. " c_x = 'X'
    Abre el editor de texto
    CALL FUNCTION 'EDIT_TEXT'
    EXPORTING
    header = wa_cabecera
    save = space
    control = lwa_control
    IMPORTING
    newheader = wa_cabecera
    function = l_action
    RESULT = l_result
    TABLES
    lines = i_comentarios
    EXCEPTIONS
    object = 1
    id = 2
    language = 3
    name = 4
    linesize = 5.
    Si cambio los comentarios, actualiza comentarios
    CASE l_action.
    WHEN c_unchanged.
    WHEN c_delete.
    WHEN c_update OR
    c_insert.
    Obtiene cantidad de lineas de comentarios originales y modificados
    DESCRIBE TABLE li_coment_save LINES l_lines_save.
    DESCRIBE TABLE i_comentarios LINES l_lines.
    Si se insertaron lineas...
    IF l_lines > l_lines_save.
    Calcula cantidad de lineas a insertar para luego calcular valor de
    indice a partir del cual insertar los nuevos comentarios
    l_lines_insert = l_lines - l_lines_save.
    l_index = ( l_lines - l_lines_insert ) + 1.
    Controla que al menos una de las lineas insertadas sea diferente de
    blanco
    l_index_aux = l_lines.
    l_insert = c_n.
    DO l_lines_insert TIMES.
    READ TABLE i_comentarios INDEX l_index_aux.
    IF sy-subrc = 0 AND
    i_comentarios-tdline <> space.
    l_insert = c_s.
    EXIT.
    ENDIF.
    l_index_aux = l_index_aux - 1.
    ENDDO.
    IF l_insert = c_s.
    Carga comentarios originales y agrega lineas insertadas
    li_coment_aux[] = li_coment_save[].
    APPEND LINES OF i_comentarios
    FROM l_index
    TO l_lines
    TO li_coment_aux.
    Setea variable para indicar actualizacion de comentarios.
    v_comentario = 'S'.
    Agrega usuario y fecha del comentario
    CONCATENATE sy-uname
    sy-datum
    INTO li_coment_aux-tdline
    SEPARATED BY space.
    li_coment_aux-tdformat = '*'.
    APPEND li_coment_aux.
    Grabamos el texto
    CALL FUNCTION 'SAVE_TEXT'
    EXPORTING
    client = sy-mandt
    header = wa_cabecera
    savemode_direct = c_x
    IMPORTING
    newheader = wa_cabecera
    TABLES
    lines = li_coment_aux
    EXCEPTIONS
    id = 1
    language = 2
    name = 3
    object = 4
    OTHERS = 5.
    IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    ENDIF.
    ENDIF.
    ENDCASE.
    ENDFORM. " f_ingresar_comentarios
    In addition, I made another program simpler that it uses the same functions and also have the same problem:
    *& Report Y_GVA_TEXT *
    REPORT y_gva_text .
    DATA: wa_cabecera LIKE thead,
    i_comentarios LIKE tline OCCURS 0 WITH HEADER LINE.
    DATA: l_action,
    v_comentario,
    l_result LIKE itcer,
    v_pedido LIKE thead-tdname VALUE '3',
    l_pedido LIKE thead-tdname,
    c_a05 LIKE thead-tdid VALUE 'A05',
    c_ekko LIKE stxh-tdobject VALUE 'EKKO',
    l_lines LIKE sy-tabix,
    lwa_control LIKE itced.
    CONSTANTS: c_x VALUE 'X',
    update VALUE 'U', "Langtext verändert
    insert VALUE 'I', "Langtext eingefügt
    delete VALUE 'D', "Langtext gelöscht
    modify VALUE 'M', "Kein Langtext, Inlinezeile veränd.
    unchanged VALUE ' '.
    CLEAR: l_action.
    CLEAR i_comentarios.
    REFRESH i_comentarios.
    Leemos el texto si es que existe
    CALL FUNCTION 'READ_TEXT'
    EXPORTING
    client = sy-mandt
    id = c_a05
    language = sy-langu
    name = v_pedido
    object = c_ekko
    IMPORTING
    header = wa_cabecera
    TABLES
    lines = i_comentarios "Lineas de texto leídas
    EXCEPTIONS
    id = 1
    language = 2
    name = 3
    not_found = 4
    object = 5
    reference_check = 6
    wrong_access_to_archive = 7
    OTHERS = 8.
    IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE 'I' NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    Armamos las cabecera para mostrar los comentarios
    CLEAR wa_cabecera.
    wa_cabecera-tdobject = c_ekko. "Objeto en tabla TTXID
    wa_cabecera-tdname = v_pedido. "Nro de pedido
    wa_cabecera-tdid = c_a05. "ID en tabla TTXID
    wa_cabecera-tdspras = sy-langu. "Lenguaje
    wa_cabecera-tdlinesize = 70.
    ENDIF.
    lwa_control-noendlines = c_x.
    lwa_control-scrollend = c_x.
    Abre el editor de texto
    CALL FUNCTION 'EDIT_TEXT'
    EXPORTING
    header = wa_cabecera
    save = space
    control = lwa_control
    IMPORTING
    newheader = wa_cabecera
    function = l_action
    RESULT = l_result
    TABLES
    lines = i_comentarios
    EXCEPTIONS
    object = 1
    id = 2
    language = 3
    name = 4
    linesize = 5.
    Si cambio los comentarios, actualiza comentarios
    CASE l_action.
    WHEN unchanged.
    WHEN delete.
    WHEN update OR
    insert.
    Agrega usuario y fecha del comentario
    CONCATENATE sy-uname
    sy-datum
    INTO i_comentarios-tdline
    SEPARATED BY space.
    i_comentarios-tdformat = '*'.
    APPEND i_comentarios.
    CALL FUNCTION 'SAVE_TEXT'
    EXPORTING
    header = wa_cabecera
    IMPORTING
    newheader = wa_cabecera
    TABLES
    lines = i_comentarios.
    ENDCASE.

    Murugesh,
    I believe that you have mis-read Gabriel's problem.
    Gabriel,
    The cursor is not positioning at the base of the editor as you have cited.
    In order to get this functionality to work, you must set the LINE_EDITOR import paramter to 'X'.
    data: hdr like THEAD.
    data: l_itced like itced.
      hdr-tdobject = 'VBBP'.
      hdr-tdname = '4000029521000030'.
      hdr-tdid = 'Z005'.
      hdr-tdspras = 'E'.
      hdr-TDLINESIZE = '100'.
      hdr-TDTXTLINES = '3'.
      l_itced-SCROLLEND = 'X'.
      CALL FUNCTION 'EDIT_TEXT'
        EXPORTING
        DISPLAY             = ' '
        EDITOR_TITLE        = ' '
          HEADER              = hdr
        PAGE                = ' '
        WINDOW              = ' '
        SAVE                = 'X'
          LINE_EDITOR         = 'X'   " here !!!
          CONTROL             = l_itced
        PROGRAM             = ' '
        LOCAL_CAT           = ' '
      IMPORTING
        FUNCTION            =
        NEWHEADER           =
        RESULT              =
        TABLES
          LINES               = lines
      EXCEPTIONS
        ID                  = 1
        LANGUAGE            = 2
        LINESIZE            = 3
        NAME                = 4
        OBJECT              = 5
        TEXTFORMAT          = 6
        COMMUNICATION       = 7
        OTHERS              = 8
    Don't forget those points !!

Maybe you are looking for