Antonio.
El ejemplo que mencionas no funciona correctamente en smartphone.
El smartphone gestiona automaticamente el scroll en los dialogos si su estilo es WS_VSCROLL, segun muestra el este código:
- Code: Select all Expand view RUN
#include "FWCE.ch"
#include "winapi.ch"
//----------------------------------------------------------------------------//
function Main()
local oWnd
DEFINE WINDOW oWnd TITLE "Scroll"
ACTIVATE WINDOW oWnd;
ON INIT InitDlg(oWnd );
return nil
FUNCTION InitDlg(oWnd )
local oDlg, cName := Space( 10 ), cAddress := Space( 10 ), cAddress2 := Space(10)
local oBtn, oRadio
DEFINE DIALOG oDlg TITLE "DIALOG SCROLL" OF oWnd;
SIZE 165, 150;
STYLE nOr(WS_POPUP, WS_VISIBLE, WS_VSCROLL, WS_CAPTION )
@ 1,0.5 SAY "Name:" OF oDlg SIZE 25, 15
//@ 1.5, 4 GET cName OF oDlg SIZE 50, 8
@ 3, 0.5 SAY "Address:" OF oDlg SIZE 25, 15
//@ 3.5, 4 GET cAddress OF oDlg SIZE 50, 8
@ 6, 0.5 SAY "Address2:" OF oDlg SIZE 27, 15
//@ 7, 4 GET cAddress2 OF oDlg SIZE 50, 8
@ 7, 1 SAY " Texto" OF oDlg SIZE 50, 8
@ 5, 5 RADIO oRadio ITEMS "1", "2" SIZE 12,12 OF oDlg
@ 9, 5 BUTTON oBtn SIZE 30, 15 OF oDlg
ACTIVATE DIALOG oDlg
RETURN nil
Pero si descomentas las líneas de los gets y recompilas , comprobarás que el scroll deja de funcionar entre get y get cuando alguno de ellos está oculto.
En estos gets, tampoco se pueden borrar los caracteres tecleados.