JDialog bestimmte Zeilen kursiv

stylegangsta

Bekanntes Mitglied
Hallo zusammen,

bin weder bei Google, noch in der Forumsuche weiter gekommen, bzw. habe mein Problem nur für JLabel finden können.

Ich habe eine JDialog, welcher über die Klasse des JFrames aufgerufen wird. Funktioniert alles wunderbar. Also mit dem Aufruf oder Code an sich in dem Sinne kein Problem vorhanden.

Das Problem:
Es sind im JDialog Fenster, was sich öffnet ca. 30 Zeilen Text enthalten. Ist es möglich, dass ich zum Beispiel nur die Zeilen 25 und 26 Kursiv ausgebe?

Wenn ja, wäre der Code sehr nett und ob ich den in der Klasse des JFrame aufrufen muss oder in der JDialog Klasse.

Danke im Voraus

Aufruf des JDialog in der Klasse Frame:
Java:
/ Allgemeine Schaltflächen
    private JButton btnCredits;
   
    private class CreditsAction implements ActionListener {

        @Override
        public void actionPerformed(ActionEvent e) {
            String msg = new String();
            msg = "abcderfegfefgeg"
+ "\ngfagagdgdaga"
+ "\nasfgagsdgsgsg"
+"\n usw usf"
+"\nca. 30 Zeilen";
            Credits popup = new Credits(msg);
            popup.setLocationRelativeTo(AEKFrame.this);
            popup.setVisible(true);
            
        }
    }

Klasse JDialog:
Java:
package Buttons;

import javax.swing.BorderFactory;
import javax.swing.JDialog;
import javax.swing.JTextPane;

@SuppressWarnings("serial")
public class Credits extends JDialog {
   
    public Credits(String msg) {
        setTitle("ÄK DataBase Reader \u00a9 by Dr.EAMTeam V 1.09.15");
        setResizable(false);
       
        JTextPane txtCredits = new JTextPane();
        txtCredits.setText(msg);
        txtCredits.setEditable(false);
        txtCredits.setBackground(getContentPane().getBackground());
        txtCredits.setBorder(BorderFactory.createEmptyBorder(15, 15, 15, 15));
       
        getContentPane().add(txtCredits);
        pack();
    }
}
 

LatinFavourite

Bekanntes Mitglied
Hi, ich weiß nicht genau was du planst, aber du könntest ja deine einzelnen Strings in ein Array packen und dann prüfen, ob der jeweilige Index erreicht ist. In dem Fall kannst du dann den enstrechenden Font setzen.
 

stylegangsta

Bekanntes Mitglied
Hi, ich weiß nicht genau was du planst, aber du könntest ja deine einzelnen Strings in ein Array packen und dann prüfen, ob der jeweilige Index erreicht ist. In dem Fall kannst du dann den enstrechenden Font setzen.
Wenn ich wüsste, wie das geht !?! :)

Es geht einfach nur darum den Trademark Text von Microsoft anzuzeigen. Und der muss lt. Vorgabe von Microsoft Kursiv sein.

Use Trademark notices

Include an attribution of Microsoft ownership of the trademark(s) in the credit notice section of your documentation or advertisement—follow this format:

Microsoft, Encarta, MSN, and Windows are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.

Habe es schon so versucht:
"<html><i>Microsoft, Encarta, MSN, and Windows are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.</i></html>"

Hat aber auch nicht geklappt.
 

LatinFavourite

Bekanntes Mitglied
Alles klar. Was genau weißt du denn nicht?
Den Font kannst du ja so setzen.
Java:
Font font = new Font("Serial", Font.ITALIC, 12)
txtCredits.setFont(font);


Stimmt, sehe gerade dass mein Ansatz wohl nicht bei einer JTextPane funktioniert.

Und direktes Zeichnen über den Grafikkontext möchtest du nicht?

Vielleicht könnte das ja hilfreich sein.
http://www.java-forum.org/thema/jtextarea-schriftart-aendern.12334/
 
Zuletzt bearbeitet:

thet1983

Top Contributor
so??
Java:
String text = "<html><center>Dies ist ein normaler Text und <em> dieser ist kursiv </em>"+
                    " <strong>dieser ist fett</strong> </center></html>";
 

stylegangsta

Bekanntes Mitglied
so??
Java:
String text = "<html><center>Dies ist ein normaler Text und <em> dieser ist kursiv </em>"+
                    " <strong>dieser ist fett</strong> </center></html>";
Scheint leider nicht als msg übergabe funkitonieren

Ich kann mir vorstellen, dass man ein JLabel einbauen könnte, aber das muss doch auch ohne JLbabel machbar sein bestimmte Zeilen in JDialog Kursiv anzuzeigen
 
Zuletzt bearbeitet von einem Moderator:

stylegangsta

Bekanntes Mitglied
Hast du dir den Link einmal angesehen. Ansonsten ist das vielleicht hilfreich.
https://docs.oracle.com/javase/tutorial/uiswing/components/editorpane.html
Habe ich, hat mir aber nicht wirklich geholfen, weil es zum eine JTextArea ist, indem der kursive Text steht und ich im Beispielcode nichts von ITALIC gesehen habe.

Ich möchte ja, dass es reiner JTextPane bleibt. Also, dass ich direkt bestimme, dass Zeile 3 zum Beispiel Kurisv ausgegeben wird. Aber das scheint nicht möglich zu sein. Hab auch nichts in Google entdecken können.
 

stylegangsta

Bekanntes Mitglied
Habe ich, hat mir aber nicht wirklich geholfen, weil es zum eine JTextArea ist, indem der kursive Text steht und ich im Beispielcode nichts von ITALIC gesehen habe.

Ich möchte ja, dass es reiner JTextPane bleibt. Also, dass ich direkt bestimme, dass Zeile 3 zum Beispiel Kurisv ausgegeben wird. Aber das scheint nicht möglich zu sein. Hab auch nichts in Google entdecken können.
Ohh sorry, hab den echten code gerade erst gefunden. Moment Bitte
 

stylegangsta

Bekanntes Mitglied
Ich geh davon aus, dass du auf diese Teil im Code hinaus willst
Java:
private JTextPane createTextPane() {
        String[] initString =
                { "This is an editable JTextPane, ",            //regular
                  "another ",                                   //italic
                  "styled ",                                    //bold
                  "text ",                                      //small
                  "component, ",                                //large
                  "which supports embedded components..." + newline,//regular
                  " " + newline,                                //button
                  "...and embedded icons..." + newline,         //regular
                  " ",                                          //icon
                  newline + "JTextPane is a subclass of JEditorPane that " +
                    "uses a StyledEditorKit and StyledDocument, and provides " +
                    "cover methods for interacting with those objects."
                 };
        String[] initStyles =
                { "regular", "italic", "bold", "small", "large",
                  "regular", "button", "regular", "icon",
                  "regular"
                };

Hab ich versucht, zuerst meckert er, dass es final sein muss und dann will statt den () diese [] haben und ein ;
Dann wird alles rot
 

thet1983

Top Contributor
nur mal zum verständniss willst du jetzt den Text als JOptionPane oder JTextPane ausgeben??

mit JOPtionPane
Java:
package test.demos;

import javax.swing.JOptionPane;

public class DialogDemo {
   public static void main(String[] args) {
     String text = "<html><center>Dieser Text ist normal, <em>"
         + "dieser ist kursiv</em>, und dieser ist "
         + "<strong>fett</strong></center></html>";

     JOptionPane.showMessageDialog(null, text);
   }
}
und bei einem JTextPane
Java:
String text = "<html><center>Dieser Text ist normal, <em>"
         + "dieser ist kursiv</em>, und dieser ist "
         + "<strong>fett</strong></center></html>";

     JTextPane tp = new JTextPane();
//*************
     tp.setContentType("text/html"); //-->  du willst text als html anzeigen!! <--
//*************    
     tp.setText(text);
 

stylegangsta

Bekanntes Mitglied
nur mal zum verständniss willst du jetzt den Text als JOptionPane oder JTextPane ausgeben??

Ich habe ja im Thread ganz oben den Code, mit der Textausgabe, das sind ca. Zeilen, die über den ActionListener im JDialog erscheinen.

Author, Urheber, blablalbla etc.
Ich möchte davon einfach nur bestimmte Zeilen, zum Beispiel die Zeilen 5 + 6 Kursiv ausgeben, bzw. in meinem Fall sind es die letzten beiden Zeilen.
 

thet1983

Top Contributor
da sich an diesem Text ja nichts mehr ändert würde ich den,wie ich bereits geschrieben habe abtippen....

oder du bindest eine html seite ein wo das alles drinnen steht....
 

stylegangsta

Bekanntes Mitglied
da sich an diesem Text ja nichts mehr ändert würde ich den,wie ich bereits geschrieben habe abtippen....

oder du bindest eine html seite ein wo das alles drinnen steht....

Meinst du das so?

Java:
/ Allgemeine Schaltflächen
    private JButton btnCredits;

    private class CreditsAction implements ActionListener {

        @Override
        public void actionPerformed(ActionEvent e) {
            String msg = new String();
            msg = "abcderfegfefgeg"
+ "\ngfagagdgdaga"
+ "\nasfgagsdgsgsg";
   String text ="<html><center>Zeile 6 <em>"
         +"Zeile 7</em>, Weiterhine Zeile 7 "
         +"<strong>Zeile 8</strong></center></html>";

     [URL='http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+joptionpane']JOptionPane[/URL].showMessageDialog(null, text);
+"\n usw usf"
+"\nca. 30 Zeilen";
            Credits popup = new Credits(msg);
            popup.setLocationRelativeTo(AEKFrame.this);
            popup.setVisible(true);
         
        }
    }
 

thet1983

Top Contributor
was ist Credits? (JFrame, JDialog ??? )

übernimm den text als JOptionPane oder JTextPane
Java:
JTextPane tp = new JTextPane();
tp.setContentType("text/html"); // nicht vergessen!!
tp.setText(text);
// ....

Code:
String text = "<html><center>"
         + "<h2><b>Use Trademark notices</h2><b>"
         + "<p>Include an attribution of Microsoft ownership of the trademark(s) in the credit notice "
         + "section of your documentation or advertisement—follow this format:</p>"
         + "<p><em>Microsoft, Encarta, MSN, and Windows are either registered trademarks or trademarks of "
         + "Microsoft Corporation in the United States and/or other countries.</em></p></center></html>";
 

stylegangsta

Bekanntes Mitglied
was ist Credits? (JFrame, JDialog ??? )

übernimm den text als JOptionPane oder JTextPane
Java:
JTextPane tp = new JTextPane();
tp.setContentType("text/html"); // nicht vergessen!!
tp.setText(text);
// ....

Code:
String text = "<html><center>"
         + "<h2><b>Use Trademark notices</h2><b>"
         + "<p>Include an attribution of Microsoft ownership of the trademark(s) in the credit notice "
         + "section of your documentation or advertisement—follow this format:</p>"
         + "<p><em>Microsoft, Encarta, MSN, and Windows are either registered trademarks or trademarks of "
         + "Microsoft Corporation in the United States and/or other countries.</em></p></center></html>";

Credits ist die Klase, die erbt vom JDialog.

-----------------------------------------------------
GELÖST DANKE FÜR DIE HILFE
-----------------------------------------------------
 
Zuletzt bearbeitet:

stylegangsta

Bekanntes Mitglied
Für die Nachwelt:

Codeabschnitt im JFrame
Java:
        @Override
        public void actionPerformed(ActionEvent e) {
            String msg = new String();
            msg = "<html><left><p style='font-size:9px;'><font face=\''>"
                    + "ÄK DataBase Reader \u00a9 by Dr.EAMTeam<br>" + "Version Number: 1.09.15<br><br>"
                    + "Project: Dr.EAMTeam<br>" + "Zeilexyz<br>" + "Zeile<br><br>"
                    + "Text<br><br>"
                    + "<em>Microsoft, Encarta, MSN, and Windows are either registered trademarks or trademarks of<br>"
                    + "Microsoft Corporation in the United States and/or other countries.</em></left></p></html>";
            Credits popup = new Credits(msg);
            popup.setLocationRelativeTo(AEKFrame.this);
            popup.setVisible(true);
        }
    }

Code Klasse Credits
Java:
import javax.swing.BorderFactory;
import javax.swing.JDialog;
import javax.swing.JTextPane;

@SuppressWarnings("serial")
public class Credits extends JDialog {

    public Credits(String msg) {
        setTitle("ÄK DataBase Reader \u00a9 by Dr.EAMTeam V 1.09.15");
        setResizable(false);

        JTextPane txtCredits = new JTextPane();
        txtCredits.setContentType("text/html");
        txtCredits.setText(msg);
        txtCredits.setEditable(false);
        txtCredits.setBackground(getContentPane().getBackground());
        txtCredits.setBorder(BorderFactory.createEmptyBorder(15, 15, 15, 15));

        getContentPane().add(txtCredits);
        pack();
    }
}

Und so siehts aus:
upload_2015-9-16_20-17-33.png
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
E JDialog mit count down timer AWT, Swing, JavaFX & SWT 1
H JDialog in Größe ändern - Resize-Cursor bleibt betreten der Komponente AWT, Swing, JavaFX & SWT 1
A ViewController (IFrame) > Jdialog > Model AWT, Swing, JavaFX & SWT 1
J Ablaufsteuerung/Anleitung machen mit JDialog und einer Zustandsmaschine AWT, Swing, JavaFX & SWT 1
L Swing JDialog ton beim klicken ausstellen AWT, Swing, JavaFX & SWT 1
L JDialog hat manchmal keinen Inhalt AWT, Swing, JavaFX & SWT 2
Drachenbauer Hauptfenster erhält schmale Streifen rechts unt unten, wenn ich einen JDialog hinzufüge. AWT, Swing, JavaFX & SWT 19
it_is_all Warum wird die JTable im JDialog nicht angezeigt? AWT, Swing, JavaFX & SWT 1
B Eingaben im JDialog abwarten AWT, Swing, JavaFX & SWT 4
S Swing JDialog mit KeyEvent als Rückgabe AWT, Swing, JavaFX & SWT 1
O Swing JDialog öffnen und dann warten bis er geschlossen wurde AWT, Swing, JavaFX & SWT 2
M LayoutManager Modalen JDialog ein Layout zuweisen AWT, Swing, JavaFX & SWT 3
Bluedaishi JDialog modal und JTextArea AWT, Swing, JavaFX & SWT 4
L KeyListener für JDialog AWT, Swing, JavaFX & SWT 7
T Event Handling JDialog schließen, sobald ein neuer erzeugt wird AWT, Swing, JavaFX & SWT 3
D jButton auf von jFrame erzeugtem jDialog AWT, Swing, JavaFX & SWT 16
D Button auf geöffnetem JDialog AWT, Swing, JavaFX & SWT 5
N Definitionen JDialog AWT, Swing, JavaFX & SWT 7
L JDialog - Event wenn Parent größe ändert AWT, Swing, JavaFX & SWT 2
Joew0815 JDialog repaint() funktioniert nicht wie gewünscht. AWT, Swing, JavaFX & SWT 2
D Swing Schließen von JDialog soll auch JFrame schließen. AWT, Swing, JavaFX & SWT 4
N Swing Fragen zu non-modal JDialog AWT, Swing, JavaFX & SWT 1
F Swing JDialog schließen - WindowListener bekommt dispose nicht mit AWT, Swing, JavaFX & SWT 0
N JDialog als Progress-Anzeige AWT, Swing, JavaFX & SWT 6
M JDialog statt JFrame AWT, Swing, JavaFX & SWT 22
I focus an ein jdialog geben AWT, Swing, JavaFX & SWT 3
3 JDialog über einem Vollbildfenster anzeigen AWT, Swing, JavaFX & SWT 5
M JDialog soll JFrame "blockieren" AWT, Swing, JavaFX & SWT 2
K JDialog zeigt Components nicht an AWT, Swing, JavaFX & SWT 3
S Jframe aus JDialog starten AWT, Swing, JavaFX & SWT 4
M JDialog übergibt eingaben nicht an aufrufende klasse AWT, Swing, JavaFX & SWT 15
S Assistent im JDialog AWT, Swing, JavaFX & SWT 7
H Swing JDialog cannot be resolved as a typ AWT, Swing, JavaFX & SWT 12
C Swing JDialog "flutet" den Arbeitsspeicher AWT, Swing, JavaFX & SWT 9
S Swing Eigenen JDialog mit Rückgabewert AWT, Swing, JavaFX & SWT 3
C Swing JDialog Ladebildschirm wird nicht angezeit AWT, Swing, JavaFX & SWT 5
Jagson Mit JMenu auf jDialog zurück? Wie? AWT, Swing, JavaFX & SWT 8
A JDialog (modal) blockiert alle Fenster! AWT, Swing, JavaFX & SWT 2
Jagson Swing Von JDialog zu anderem JDialog wechseln AWT, Swing, JavaFX & SWT 2
S JDialog direkt über dem MainFrame aufpoppen lassen AWT, Swing, JavaFX & SWT 2
A Swing JDialog KeyBindings und Textfelder AWT, Swing, JavaFX & SWT 5
D Daten von JDialog an JTable in JFrame übergeben AWT, Swing, JavaFX & SWT 7
D JDialog: immer nur einer gleichzeitig AWT, Swing, JavaFX & SWT 4
S JDialog per Button schließen AWT, Swing, JavaFX & SWT 2
B Swing JDialog modal, aber trotzdem Frame auswählbar AWT, Swing, JavaFX & SWT 2
D JDialog alwaysOnTop, aber nur innerhalb der Applikation AWT, Swing, JavaFX & SWT 3
J Swing JDialog blokiert mehrere JFrames - soll aber nur den aufrufenden blockieren AWT, Swing, JavaFX & SWT 4
S JDialog über Applet AWT, Swing, JavaFX & SWT 3
N Swing Klasse erbt von JDialog - Problem mit innerer ActionListener-Klasse AWT, Swing, JavaFX & SWT 6
J Swing JDialog gleichzeitig mit JFrame anzeigen AWT, Swing, JavaFX & SWT 8
S Probleme jDialog einfügen AWT, Swing, JavaFX & SWT 4
qwerqer Swing JDialog Darstellungsprobleme - Dialog lässt sich nicht schließen AWT, Swing, JavaFX & SWT 3
S Schrift ändern in JDialog AWT, Swing, JavaFX & SWT 3
S Problem mit JDialog AWT, Swing, JavaFX & SWT 3
D Elternfenster vom JDialog aktualisieren oder nicht ? AWT, Swing, JavaFX & SWT 7
hdi Swing Genaue Funktionsweise von modalem JDialog? AWT, Swing, JavaFX & SWT 11
U JDialog ohne Taskleiste AWT, Swing, JavaFX & SWT 7
S Programm pausieren während JDialog offen ist AWT, Swing, JavaFX & SWT 2
X JEditorPane Größe in JDialog automatisch anpassen AWT, Swing, JavaFX & SWT 2
Ollek JDialog Koponenten neu anordnen AWT, Swing, JavaFX & SWT 3
A JDialog AWT, Swing, JavaFX & SWT 10
Dit_ SwingUtilities.invokeLater und Modaler JDialog AWT, Swing, JavaFX & SWT 11
A Frage zu JDialog AWT, Swing, JavaFX & SWT 3
A JDialog ausdrucken AWT, Swing, JavaFX & SWT 7
aze JDialog mit runden ecken AWT, Swing, JavaFX & SWT 8
Dit_ JDialog nur horizontal vergrößern AWT, Swing, JavaFX & SWT 3
C Swing JProgressBar in JDialog wird nicht angezeigt AWT, Swing, JavaFX & SWT 6
M Swing Vererbung, Probleme mit JDialog AWT, Swing, JavaFX & SWT 12
H JDialog, Modal - Klassenübergreifend => Problem AWT, Swing, JavaFX & SWT 5
S Swing Bild (Gif) in Bitte warten JDialog AWT, Swing, JavaFX & SWT 6
U JFrame minimiert nach JDialog, JOptionPane AWT, Swing, JavaFX & SWT 3
K Swing JDialog aus Frame ausrufen AWT, Swing, JavaFX & SWT 2
B JDialog über JFileChooser anzeigen AWT, Swing, JavaFX & SWT 6
B JDialog AWT, Swing, JavaFX & SWT 6
J Swing Probmel mit JDialog (Modal/FocusLost/Button) AWT, Swing, JavaFX & SWT 5
E Swing Fehlerhaftes Verhalten bei gleichzeitigen Verwendnen von PopUpMenu und JDialog?! AWT, Swing, JavaFX & SWT 5
J Swing JDialog mit static-Funktion anzeigen -> Rückgabewert AWT, Swing, JavaFX & SWT 3
E Daten von JDialog nach JFrame übertragen AWT, Swing, JavaFX & SWT 4
F ActionListener von JButton funktioniert mit JFrame aber nicht mit JDialog AWT, Swing, JavaFX & SWT 2
D Mehrere Comboboxen in JDialog AWT, Swing, JavaFX & SWT 2
F JDialog per Button schliessen - klappt nicht AWT, Swing, JavaFX & SWT 4
BattleMaster246 JDialog erscheint in der Taskbar AWT, Swing, JavaFX & SWT 7
H Sub-Dialog von modalem JDialog aus aufrufen - geht das? AWT, Swing, JavaFX & SWT 6
R Swing JDialog liefert immer false, 2 JListen verknüpfen AWT, Swing, JavaFX & SWT 3
P Swing eigenen Modalen JDialog AWT, Swing, JavaFX & SWT 6
J JDialog verliert Werte AWT, Swing, JavaFX & SWT 3
N Variablen an JDialog übergeben AWT, Swing, JavaFX & SWT 2
P Swing JDialog schliesst nicht AWT, Swing, JavaFX & SWT 2
X Swing JDialog von JInternalFrames überlappen lassen AWT, Swing, JavaFX & SWT 2
O JDialog-JScrollPane-JTable Problem AWT, Swing, JavaFX & SWT 3
N Swing Frage zu modalem JDialog. AWT, Swing, JavaFX & SWT 16
A JFrame oder JDialog AWT, Swing, JavaFX & SWT 12
B Swing JDialog : Herausfinden wie dieser beendet wurde? AWT, Swing, JavaFX & SWT 2
T JDialog ohne Fenstermanager? AWT, Swing, JavaFX & SWT 2
S JDialog in der Taskbar anzeigen AWT, Swing, JavaFX & SWT 3
A Swing JFrame Werte aus JDialog übergeben AWT, Swing, JavaFX & SWT 4
K Swing JDialog ohne Titlebar mit Rahmen AWT, Swing, JavaFX & SWT 5
KrokoDiehl Swing KeyEvents für JDialog / JFrame AWT, Swing, JavaFX & SWT 2
C Swing JComboBox in JDialog AWT, Swing, JavaFX & SWT 3
F Frage zu Dialogen mit JDialog -Erstellung des Konstruktors AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben