Maison  >  Article  >  Java  >  Comment restituer des chaînes HTML dans Swing : au-delà de la méthode DrawString

Comment restituer des chaînes HTML dans Swing : au-delà de la méthode DrawString

DDD
DDDoriginal
2024-11-12 17:12:02393parcourir

How to Render HTML Strings in Swing: Beyond the DrawString Method

Rendu HTML Swing : surmonter les limitations de DrawString

Dans Swing, la méthode drawString offre une prise en charge limitée du formatage HTML. Pour restituer efficacement les chaînes HTML, des approches alternatives sont nécessaires.

Une solution possible consiste à exploiter le composant JLabel, un composant Swing spécialisé conçu pour afficher du texte. En ajoutant la chaîne au format HTML à une instance JLabel et en l'attribuant à un CellRendererPane, il est possible de peindre la chaîne avec le rendu HTML.

Cette technique permet un meilleur contrôle sur le rendu HTML, y compris la possibilité de le personnaliser. la couleur, la police et l'emplacement du texte rendu. L'exemple de code fourni crée un composant JLabel réutilisable qui peut être peint à plusieurs reprises à différents endroits avec différentes couleurs, ce qui donne un rendu HTML visuellement attrayant et dynamique :

public class PaintComponentTest extends JPanel {

    private JLabel renderer = new JLabel(s); // HTML-formatted string
    private CellRendererPane crp = new CellRendererPane();
    private Dimension dim;

    public PaintComponentTest() {
        dim = renderer.getPreferredSize();
        this.add(crp);
    }

    @Override
    protected void paintComponent(Graphics g) {
        super.paintComponent(g);
        for (int i = 0; i < N; i++) {
            renderer.setForeground(Color.getHSBColor((float) i / N, 1, 1));
            crp.paintComponent(g, renderer, this,
                i * dim.width, i * dim.height, dim.width, dim.height);
        }
    }
}

Cette approche améliorée fournit une solution personnalisable et visuellement attrayante. pour le rendu des chaînes HTML dans Swing, en répondant aux limitations de la méthode drawString.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn