Page 1 of 1

GetLine() & RTF

Posted: Wed Nov 16, 2011 5:31 pm
by Romeo
Salve,
utilizzando l'esempio TESTRTF.PRG della samples, ho inserito un bottone che fa la copia della riga ove si trova il cursore, usando...
nline:=oRTF:GetRow()
cline:=oRtf:GetLine(nline)
..
oRtf:InsertRTF(cline)
..

Tutto ok, ma copia solo il testo.

Dato che pero' ci possono essere anche Grassetti,Font diversi, formattazione,ecc.. come e' possibile copiare e incollare l'intera riga con tutto sta roba ?

Ho provato ad utilizzare il metodo Copy() e Paste(), ma non va...

Ovviamente canno da qualche parte.

Quache aiuto ?

fwh 8.1

Grazie

Romeo/Zingoni

Re: GetLine() & RTF

Posted: Wed Nov 16, 2011 6:26 pm
by Enrico Maria Giordano
Purtroppo non conosco per niente bene il controllo TRichEdit. Ti conviene chiedere nella sezione in inglese del forum.

EMG

Re: GetLine() & RTF

Posted: Thu Nov 17, 2011 10:24 am
by MaxP
Salve,
non so se è quello che cerchi però prova queste funzioni
negli eventuali bottoni Copia/Incolla.

Code: Select all

FUNCTION CopiaRiga( oRTF )
        LOCAL   nLine
        LOCAL   nGetSel   := oRTF:SendMsg( EM_GETSEL )
        LOCAL   nStartCur := nLoWord( nGetSel )
        LOCAL   nEndCur   := nHiWord( nGetSel )
        LOCAL   nGetFLine, nGetLLine

        oRTF:SendMsg( WM_KEYDOWN, VK_HOME, 0 )
        nGetFLine := oRTF:SendMsg( EM_GETSEL )
        
        oRTF:SendMsg( WM_KEYDOWN, VK_END, 0 )
        nGetLLine := oRTF:SendMsg( EM_GETSEL )
        
        oRTF:SetSel( nLoWord( nGetFLine ), nLoWord( nGetLLine ) )

        oRTF:Copy()

        oRTF:SetSel( nStartCur, nEndCur )
        
        oRTF:SetFocus()
RETURN NIL

FUNCTION IncollaRiga( oRTF )
        oRTF:Paste()
        
        oRTF:SetFocus()
RETURN NIL
 
Ciao Massimo :wink:

Re: GetLine() & RTF

Posted: Thu Nov 17, 2011 4:59 pm
by Romeo
......ovviamente funziona !!

Grazie

Re: GetLine() & RTF

Posted: Thu Nov 17, 2011 6:21 pm
by Enrico Maria Giordano
Ottimo! :-)

EMG