Salve a tutti, sto provando a creare un editor di testi con delphi. Volevo utilizzare i tipi di style Grassetto,Corsivo,Sottolineato,Barrato. Selezionando un testo vorrei capire se questo ha una o più delle seguenti proprietà per mettere una spunta nella suddetta voce del TMainMenu.
Avevo pensato di utilizzare la funzione SelAttributes, ma c'è un piccolo problema che mi ferma.
Provando a scrivere qualcosa (molto semplice, giusto per vedere se funzionava) avevo scritto:
dove Testo è il nome del TRichEdit e Grassetto1 è il nome della voce nel menù. Ho provato questo ed effettivamente funziona e fa quello che gli richiedo. Ho quindi fatto la stessa cosa anche con il Corsivo, il Sottolineato e il Barrato. Prendendo singolarmente una parte di testo uniformemente formattata funziona, ma quando vado a selezionare una parte di testo in grassetto insieme ad una parte di testo in corsivo (ad esempio:Parteingrassetto Parte in corsivo) viene spuntata una sola voce nel menu e (non vorrei dire una cavolata) mi è sembrato che venga spuntata quella relativa al tipo di Style che è presente nel momento in qui rilascio il pulsante del mouse per smettere di selezionare l'area.codice:begin if Testo.SelAttributes.Style=[fsBold] then begin Grassetto1.Checked:=True; end; end;
Quindi la domanda è: come posso fare per determinare quanti tipi di Style sono presenti in un testo selezionato?