Il mio scopo è correggere la calcolatrice Dutch.prg dei samples, dove i risultati vengono visualizzati appunto su una multiline get che dovrebbe scorrere verso l'alto, ma non lo fa.
In pratica ogni volta che premo un operatore artimetico viene aggiunta una riga, però malgrado sia inserito un oggetto:goBottom il cursore rimane sempre in cima alla get, e costringe ogni volta a scorrere alla fine della get per vedere l'ultimo risultato.
Ho riassunto nell'esempio minimale che allego il problema.
Code: Select all
#include "FiveWin.ch"
function Main()
local oRes, cRes, oDlg
DEFINE DIALOG oDlg SIZE 205, 260
@ 0.1, 0.5 GET oRes VAR cRes OF oDlg ;
MULTILINE ;
SIZE 95, 45 RIGHT
ores:bKeyDown := { | nKey | test(oRes,nKey)}
ACTIVATE DIALOG oDlg CENTER
return .T.
*-------------------------------*
FUNCTION test(oRes,nKey)
if nKey == 107 // "+"
oRes:cText( oRes:cText()+"altra riga"+CRLF+" ")
Tone(400,1)
oRes:GoBottom()
endif
return NIL
Come risolvere il problema?
saluti