Aquí el problema no está en si el memo tiene o no el foco. SelStart := 0 realmente pone el cursor en el primer caracter como podrás comprobar si después la instrucción cambias el foco al memo (no con el ratón sino con TAB) y oprimes la tecla de movimiento a la derecha. En ese momento las líneas del memo se desplazan para reflejar la posición del cursor.
El problema está justamente en que la sola instrucción SelStart := 0 no desplaza las líneas.
Pon
Memo1.Perform(EM_SCROLLCARET, 0, 0);
después de SelStart y obtendrás lo que quieres.
Nota BeginUpdate y EndUpdate no ayudan para este problema específico. Estas instrucciones sirven para que los cambios en las líneas del memo no se visualicen sino hasta que terminen de adicionarse todas. Pero aún así, el cursor termina al final del memo.
// Saludos
Última edición por roman fecha: 22-06-2005 a las 16:20:30.
|