Je sais que SWT a une classe Link pour créer des liens de style href HTML comme widgets, mais j'ai essayé de trouver un moyen de faire apparaître un texte dans un contrôle StyledText et de fonctionner comme un lien. J'ai l'impression qu'Eclipse le fait dans son éditeur de code si vous maintenez le contrôle et passez la souris sur un nom de méthode, mais je sais que l'éditeur java Eclipse est beaucoup plus compliqué qu'un contrôle StyledText.Des liens HTML peuvent-ils être ajoutés à SWT StyledText?
6
A
Répondre
7
Depuis JFace 3.5, il y a un style particulier pour les liens:
styleRange.underlineStyle = SWT.UNDERLINE_LINK;
styleRange.data = "http://www.google.com/";
Cela le rend beaucoup plus simple d'identifier un lien et vous pouvez stocker l'URL dans le style. Comme pour trouver automatiquement des liens, il suffit de chercher le modèle http://[^ ]
(les espaces ne sont pas autorisés dans les liens) dans les lignes que vous obtenez et ajouter le style.
2
Vous devez ajouter un LineStyleListener au widget StyledText:
textField.addLineStyleListener (...);
...
public void lineGetStyle (LineStyleEvent e)
{
// alloc a set of styles for the requested line
e.styles = new StyleRange [...];
for (int i = 0; i < e.styles.length; i++)
{
StyleRange styleRange = new StyleRange();
styleRange.start = ...;
styleRange.length = ...;
styleRange.underline = true;
styleRange.foreground = <URL colour>;
e.styles [i] = styleRange;
}
}
Le javadoc pour LineStyleListener vous donner plus d'informations. Pour ajouter le comportement de clic, vous avez besoin de plus de logique: Je pourrais également coller du code que nous utilisons pour ajouter automatiquement des URL de liens cliquables de style HTML dans un widget StyledText si cela pouvait aider.
Questions connexes
- 1. Impossible d'affecter jQuery jqModal à des liens ajoutés dynamiquement
- 2. SWT/JFace: supprime les widgets
- 3. Supprimer toutes les balises HTML à l'exception des liens
- 4. expression régulière pour analyser des liens html
- 5. Liens HTML vers des partages réseau locaux
- 6. Liens et ancres codés HTML
- 7. Réglage des couleurs dans SWT
- 8. SWT Champ de mise en évidence de la syntaxe
- 9. Solution de vérification des liens
- 10. Les objets ajoutés à la collection SqlException.Data doivent-ils être [Serializable]?
- 11. SWT et Webstart sur Mac
- 12. Définition des retards de l'info-bulle SWT
- 13. Liste des liens
- 14. Mise à jour des tables de liens
- 15. Extrait tous les liens entre les balises HTML spécifié à partir d'un fichier html avec sed
- 16. drupal: ajouter des liens simples à un bloc
- 17. Caractères ajoutés sur POST
- 18. Gestion des événements des contrôles ajoutés pendant l'exécution
- 19. Déploiement d'une application SWT sur Java Webstart
- 20. SWT Link scintille avec fond dégradé
- 21. Can Sandcastle peut-il être configuré pour produire des pages et des liens compatibles avec le SEO?
- 22. afficher les liens dans le JTextPane de java sans html
- 23. variable Set à être formaté en HTML avant d'envoyer email
- 24. Suivi des 'liens utiles'
- 25. JFreeChart avec SWT
- 26. Ajouter des liens à des points spécifiques d'une vidéo flash
- 27. Comment lier des actions à des liens dans jQuery?
- 28. Utilisation de la propriété d'ancrage avec des contrôles ajoutés dynamiquement
- 29. Trouver des espaces dans les liens d'ancrage
- 30. SWT en représentation BMML
Merci! Je serais intéressé de voir le code que vous utilisez pour ajouter automatiquement des liens, mais cela est utile. – thehiatus