|
Los métodos que existen, éste y el que existe utilizando mensajes utilizan el TabOrder para posicionarse en el "siguiente" control; Me da la impresión de que si quieres que al pulsar la flecha Derecha se posicione en el más próximo en esa dirección, independientemente del TabOrder, e igual en las siguientes direcciones lo vas a tener que realizar tú "a mano".
Deberás hacer una rutina que te calcule, a partir de un control, el más prosimo en una determinada dirección.
Debes repasar todos los componentes del Form (Form.ComponentCount y Form.Components[i]) y detectar cual el el "siguiente" a partir de la dirección (flecha pulsada). Sólo un detalle, ten en cuenta que estén dentro del mismo contenedor, ya que no te servirá para controles que estén en diferentes pestańas (por ejemplo).
|