/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Text control med formatterings metoder?
Fra : Esben Maaløe


Dato : 19-04-01 13:30

Hej!

Findes der en (frit tilgængelig) tekst-kontrol klasse der tillader
formattering af tekst?

Sådan noget med bold, italic, overskrift1, overskrift2 osv?

I givet fald: Hvor finder jeg den?

På forhånd tak

--
Acebone
acebone@f2s.com
www.acebone.f2s.com

 
 
Niels Bech Nielsen (19-04-2001)
Kommentar
Fra : Niels Bech Nielsen


Dato : 19-04-01 14:26

Alle JTextcomponents anvender et underliggende Document object, som tillader
diverse AttributeSets, som kan anvendes fuldstændigt efter behov, men jeg
tror følgende vil kunne tilfredsstille dine behov

import javax.swing.*;
import javax.swing.text.*;
import java.awt.*;
import java.awt.event.*;

public class Panetest {
public static void main(String[] args) {
JFrame f = new JFrame();
f.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0); } });

// Focus here!!!
JTextPane mypane = new JTextPane();
mypane.setContentType("text/html");
mypane.setText("Dette er <b>Fed</b> tekst");

f.getContentPane().add(mypane);
f.setSize(300,300);
f.setVisible(true);
}}

--
/Niels Bech Nielsen -- Logical
SCJ2P - ** Sun Certified Java 2 Programmer **

"Esben Maaløe" <acebone@f2s.com> wrote in message
news:20010419.12301788@mis.configured.host...
Hej!

Findes der en (frit tilgængelig) tekst-kontrol klasse der tillader
formattering af tekst?

Sådan noget med bold, italic, overskrift1, overskrift2 osv?

I givet fald: Hvor finder jeg den?

På forhånd tak

--
Acebone
acebone@f2s.com
www.acebone.f2s.com



Acebone (19-04-2001)
Kommentar
Fra : Acebone


Dato : 19-04-01 17:00

Wauv (og mange tak)!

Jeg har aldrig lavet java før (PHP, ASP, PERL,VB, C).

Jeg har lige downloadet Suns Forte, roder lidt rundt med 'PaneTest' og
'panetest' før jeg kommer til at tænke på 'Panetest'

Og det virker sg*!

Med fare for at virke anmassende: Hvad skal jeg instantiere for at få
keyboard-kommandoer på (CTRL+B osv.)?

--
Acebone
acebone@f2s.com
www.acebone.f2s.com


Niels Bech Nielsen (19-04-2001)
Kommentar
Fra : Niels Bech Nielsen


Dato : 19-04-01 21:56

"Acebone" <acebone@f2s.com> wrote in message
news:20010419.16001508@mis.configured.host...
Wauv (og mange tak)!

Med fare for at virke anmassende: Hvad skal jeg instantiere for at få
keyboard-kommandoer på (CTRL+B osv.)?

--
Acebone
acebone@f2s.com
www.acebone.f2s.com



Det har enten noget at gøre med "mnemonic", keymaps eller key accelleration


Det nemmeste med en JButton:

JButton b = new JButton("Quit");
b.setMnemonic('Q');

som så mapper <ALT>-Q til knappen

Hvis det er en JLabel som er label for et JTextfield, kan man gøre følgende:

JTextField tf = new JTextField(3);
JLabel l = new JLabel("Navn");
l.setLabelFor(tf);
l.setDisplayedMnemonic('N');

Som så sætter focus på text felt ved <ALT>-N.

Hvis man har en JMenuBar med JMenuItem's kan man lave key accellerator til
sine menu items, som f.eks.

JMenuItem m = new JMenuItem("Copy");
m.setAccelerator(KeyStroke.getKeyStroke('C', Event.CTRL_MASK, false));


Endelig kan alle componenter modtage key events (lidt mere tricky):
final JTextArea area = new JTextArea(10,10);
ActionListener listener = new ActionListener() {
public void actionPerformed(ActionEvent evt) {
area.append("Hej verden");
}
};
KeyStroke stroke = KeyStroke.getKeyStroke('A', Event.CTRL_MASK, false);

area.registerKeyboardAction(listener, stroke, JComponent.WHEN_FOCUSED);

Den sidste er den fulde, og kan anvendes på alle JComponents efter behov.

Prøv at trykke <CTRL>-A i dette text area, og den vil indsætte hej verden


WHEN_FOCUSED bestemmer hvornår en component får dirigeret events til sig:
WHEN_FOCUSED: kun når denne komponent har fokus
WHEN_IN_FOCUSED_WINDOW Denne eller parent(rekursiv) har fokus
WHEN_ANCESTOR_OF_FOCUSED_WINDOW Denne eller child(rekursiv) har fokus

--
/Niels Bech Nielsen -- Logical
SCJ2P - ** Sun Certified Java 2 Programmer **




Janus (22-04-2001)
Kommentar
Fra : Janus


Dato : 22-04-01 10:17

Du er svedig

Mvh Janus

"Niels Bech Nielsen" <nbn@logical.nospam.dk> wrote in message
news:6ejnb9.58c.ln@java.logical.dk...

[snip: en masse kode]



Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408941
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste