ho cercato tra gli esempi, ma non c'è nulla che fa ciò che vorrei. L'unico esempio utile è quello TextEdit, ma ho riprodotto l'esatto codice adattandolo ai miei campi ma non fa assolutamente nulla, il codice è questo (muttracam = TextEdit1 & pinguius = btnBold):
PUBLIC SUB Form_Open()
muttracam.SetFocus
muttracam_Cursor
END
PUBLIC SUB muttracam_Cursor() 'che nell'esempio è TextEdit1_Cursor()
Object.Lock(pinguius)
pinguius.Value = muttracam.Format.Font.Bold
Object.UnLock(pinguius)
END
PUBLIC SUB pinguius_Click() 'bottone corrispondente a btnBold_Click()
muttracam.Format.Font.Bold = LAST.Value
END
se clicco non fa assolutamente nulla.
Dunque... l'esempio TextEdit per ora è totalmente inutile, infatti ho trovato una prima soluzione da solo, sperimentando. Per chi ne avesse bisogno posto l'attuale codice-soluzione, ma ancora devo migliorare:
PUBLIC SUB Bold_Click()
DIM p AS Integer 'Integer che conterrà l'inizio della stringa selezionata
DIM l AS Integer 'Integer che conterrà la lunghezza della stringa selezionata
DIM f AS Integer 'Somma dei due precedenti
DIM scriptaA AS String 'Stringa che accoglie il testo PRIMA della selezione
DIM scriptaB AS String 'Stringa che accoglie il testo DOPO la selezione
'controllo che ci sia una parte selezionata nella TextArea
IF TextArea1.Selected = TRUE THEN
p = TextArea1.Selection.Start 'Setto il punto iniziale della selezione
l = TextArea1.Selection.Length 'Setto la lunghezza della selezione
f = p + l + 1 'Somma dei due precedenti + 1 per trovare il primo carattere DOPO la selezione
scriptaA = Mid$(TextArea1.Text, 1, p) 'Setto la stringa che contiene tutto il testo dall'inizio al punto p
scriptaB = Mid$(TextArea1.Text, f) 'Setto la stringa che contiene tutto il testo dal carattere dopo la selezione fino alla fine
'Aggiungo i tag <b> e </b> prima e dopo la selezione
TextArea1.Text = scriptaA & "<b>" & TextArea1.Selection.Text & "</b>" & scriptaB
ENDIF
END
l'unico inconveniente è che poi c'è bisogno di una TextEdit per vedere il risultato... ma è già qualcosa. Ho provato a usare lo stesso codice con la TextEdit ma i punti 'p' ed 'f' risultano sfalsati per via del codice html contenuto dentro, credo basti aggiungere al punto 'p' il numero dei caratteri html preimpostati, ora fuggo, stasera proverò.