Autore Topic: Evidenziamento di stringhe in un testo.  (Letto 2067 volte)

Offline koko

  • Gambero
  • **
  • Post: 52
    • Mostra profilo
Evidenziamento di stringhe in un testo.
« il: 02 Febbraio 2016, 14:03:27 »
Salve a tutti,
quello che devo ottenere è a prima vista alquanto banale; ossia un testo in un widget in cui siano evidenziati con un colore diverso tutte le parole che contengano uno specifico termine ricercato.

Con le qt4 ed il componente qt4.ext ho utilizzato il componente TextEdit che supporta richtext.

In qt5 questo componente (come anche il componente "editor" è assente; ci sarebbe Texteditor, ma da quello che si capisce dalla risicata documentazione, l'highlight non è pienamente programmabile; supportando solo delle sintassi specifiche.

Qualcuno ha idea di come realizzare ciò con gambas3+qt5?

Grazie in anticipo!
« Ultima modifica: 02 Febbraio 2016, 14:13:09 da koko »

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Evidenziamento di stringhe in un testo.
« Risposta #1 il: 02 Febbraio 2016, 15:30:26 »
Ciao koko,
per quanto riguarda TextEdit con qt5 puoi leggere questo.
Purtroppo io non posso esserti di aiuto con qt5 in quanto uso ancora Ubuntu 14.04.
Non so se le tue necessità potrebbero essere altresì soddisfatte da una DrawingArea che con Paint si può scrivere in Rich Test...
Mi viene in mente anche gb.report2 ma non lo conosco, credo supporti i colori di sfondo.
 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline koko

  • Gambero
  • **
  • Post: 52
    • Mostra profilo
Re:Evidenziamento di stringhe in un testo.
« Risposta #2 il: 02 Febbraio 2016, 15:41:05 »
In realtà potrei usare una textlabel che ancora supporta richtext ed incorporarla in una scrollview.
Funziona alla stregua del componente textedit... non fosse per il fatto che il testo non è selezionabile (nè editabile, ma non mi importa)

Grazie per il link, gli do uno sguardo.
-edit-
Fatto, sembra che sia inutile perdere tempo, visto che sta per essere implementato upstream :D
« Ultima modifica: 02 Febbraio 2016, 15:44:21 da koko »

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.720
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:Evidenziamento di stringhe in un testo.
« Risposta #3 il: 02 Febbraio 2016, 15:44:18 »
per quanto riguarda TextEdit con qt5 puoi leggere questo.


Nella discussione, riportata da Gianluigi, Minisini dice che:
      TextEdit has been included in a new 'gb.qt5.ext'
per poter utilizzare l'oggetto TextEdit con QT5, è necessario attivare il componente gb.qt5.ext
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline koko

  • Gambero
  • **
  • Post: 52
    • Mostra profilo
Re:Evidenziamento di stringhe in un testo.
« Risposta #4 il: 02 Febbraio 2016, 15:45:15 »
Aspetto la stabile, grazie ancora.

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Evidenziamento di stringhe in un testo.
« Risposta #5 il: 02 Febbraio 2016, 15:46:02 »
Ma che utilizzo ne devi fare? Guarda un po qui
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline koko

  • Gambero
  • **
  • Post: 52
    • Mostra profilo
Re:Evidenziamento di stringhe in un testo.
« Risposta #6 il: 02 Febbraio 2016, 15:52:06 »
Ho una finestra con dei log, scrivo un testo in una casella di ricerca e voglio che ogni occorrenza di quel testo sia evidenziata con un colore nella finestra dei log.
Il testo (evidenziato o meno) deve poi essere selezionabile e copiabile nella clipboard.

La soluzione della Listview non funziona, purtroppo....
« Ultima modifica: 02 Febbraio 2016, 15:53:28 da koko »

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Evidenziamento di stringhe in un testo.
« Risposta #7 il: 02 Febbraio 2016, 16:49:48 »
La soluzione della Listview non funziona, purtroppo....

Perché dici che non funziona? Non capisco, non puoi copiare quello che evidenzi nella lista?
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline koko

  • Gambero
  • **
  • Post: 52
    • Mostra profilo
Re:Evidenziamento di stringhe in un testo.
« Risposta #8 il: 03 Febbraio 2016, 16:33:56 »
Scusa, sono stato poco chiaro.
"Non funziona" nel mio caso, nel senso che non fa quello che mi serve; per esempio rende impossibile selezionare testo su più linee: per esempio, questo sarebbe impossibile:

prima linea testo da
selezionare
seconda linea

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Evidenziamento di stringhe in un testo.
« Risposta #9 il: 03 Febbraio 2016, 17:24:53 »
Scusa, sono stato poco chiaro.
"Non funziona" nel mio caso, nel senso che non fa quello che mi serve; per esempio rende impossibile selezionare testo su più linee: per esempio, questo sarebbe impossibile:

prima linea testo da
selezionare
seconda linea

Lo sai che non riesco proprio a comprendere la logica del tuo programma?
Fammi capire tu colori in una EditText una o più stringhe solo nella parte che dovrebbe essere selezionata dall'utente?
Ma se sai già quale è la parte che l'utente deve selezionare cosa gliela fai selezionare a fare?
Copiala tu nella clipboard.  :rolleyes:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline koko

  • Gambero
  • **
  • Post: 52
    • Mostra profilo

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Evidenziamento di stringhe in un testo.
« Risposta #11 il: 04 Febbraio 2016, 22:33:06 »
http://wpage.unina.it/aorefice/sharevari/out.ogg-1.ogv

vedi che avevo ragione, con listview si può riprodurre esattamente quello che fa il filmato.
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline koko

  • Gambero
  • **
  • Post: 52
    • Mostra profilo
Re:Evidenziamento di stringhe in un testo.
« Risposta #12 il: 10 Febbraio 2016, 15:33:10 »
Scusa il ritardo della risposta.
A parte quello che faccio nel filmato, ossia selezionare righe intere, serve anche selezionare parzialmente le linee, così come è possibile fare con un editor di testo qualsiasi.

Es:
prima linea testo da
selezionare
seconda linea

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Evidenziamento di stringhe in un testo.
« Risposta #13 il: 10 Febbraio 2016, 15:39:12 »
Scusa il ritardo della risposta.
A parte quello che faccio nel filmato, ossia selezionare righe intere, serve anche selezionare parzialmente le linee, così come è possibile fare con un editor di testo qualsiasi.

Es:
prima linea testo da
selezionare
seconda linea

Si, lo avevo capito  :D volevo solo scherzare un po, come lo hai fatto è molto professionale e basta aspettare un poco o lo riotterrai uguale.  :ok:
 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline koko

  • Gambero
  • **
  • Post: 52
    • Mostra profilo
Re:Evidenziamento di stringhe in un testo.
« Risposta #14 il: 12 Febbraio 2016, 18:32:41 »
Ok, non lo avevo capito :sleepy:
Quello è una piccola parte di un altro progetto che vorrei passare a qt5, aspetterò...
https://github.com/kokoko3k/xt7-player-mpv