05. august 2003 - 20:47Der er
8 kommentarer og 1 løsning
Hævet og Sænket tekst
Jeg har et JTextArea. Jeg har en Menu der giver mig mulighed for at sætte tekst i JTextArea'et kursiv, fed og understreget, men er der nogen der kan hjælpe mig med at finde ud af hvordan man hæver og sænker teksten?? hævet ligesom i matematiske potenser, og sænket som i kemiske formler....
Mange point fordi at det er vigtigt for mig... Alle foreslag bliver prøvet og accepteret/afvist indenfor 24 timer...
private DefaultStyledDocument createDocument() { document = new DefaultStyledDocument();
String init[] = { "Quick brown fox jumps over lazy dog", "Quick brown fox jumps over lazy dog", "Quick brown fox jumps over lazy dog", "Quick brown fox jumps over lazy dog", };
SimpleAttributeSet[] atts = new SimpleAttributeSet[4];
atts[0] = new SimpleAttributeSet(); StyleConstants.setFontFamily(atts[0], "SansSerif"); StyleConstants.setFontSize(atts[0], 16);
atts[1] = new SimpleAttributeSet(); StyleConstants.setBold(atts[1], true);
atts[2] = new SimpleAttributeSet(); StyleConstants.setItalic(atts[2], true);
atts[3] = new SimpleAttributeSet(); StyleConstants.setForeground(atts[3], Color.red);
try { for (int i = 0; i < init.length; i ++) { document.insertString(document.getLength(), init[i] + "\n", atts[i]); } } catch (BadLocationException ble) { ble.printStackTrace(); } return document; }
private JMenuBar createMenu() { menu = new JMenuBar();
menu.add(fileMenu = new JMenu("Filer")); JMenuItem exitItem = new JMenuItem("Afslut"); exitItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { System.exit(0); } }); fileMenu.add(exitItem);
menu.add(editMenu = new JMenu("Rediger"));
Action action = new StyledEditorKit.BoldAction(); action.putValue(Action.NAME, "Fed"); editMenu.add(action);
action = new StyledEditorKit.ItalicAction(); action.putValue(Action.NAME, "Kursiv"); editMenu.add(action);
action = new StyledEditorKit.UnderlineAction(); action.putValue(Action.NAME, "Understregning"); editMenu.add(action);
private DefaultStyledDocument createDocument() { StyleContext sc = new StyleContext(); document = new DefaultStyledDocument(sc); createStyle(sc);
String init[] = { "Quick brown fox jumps over lazy dog", "Quick brown fox jumps over lazy dog", "Quick brown fox jumps over lazy dog", "Quick brown fox jumps over lazy dog", };
SimpleAttributeSet[] atts = new SimpleAttributeSet[4];
atts[0] = new SimpleAttributeSet(); StyleConstants.setFontFamily(atts[0], "SansSerif"); StyleConstants.setFontSize(atts[0], 16);
atts[1] = new SimpleAttributeSet(); StyleConstants.setBold(atts[1], true);
atts[2] = new SimpleAttributeSet(); StyleConstants.setItalic(atts[2], true);
atts[3] = new SimpleAttributeSet(); StyleConstants.setForeground(atts[3], Color.red);
try { for (int i = 0; i < init.length; i ++) { document.insertString(document.getLength(), init[i] + "\n", atts[i]); } } catch (BadLocationException ble) { ble.printStackTrace(); } return document; }
private JMenuBar createMenu() { menu = new JMenuBar();
menu.add(fileMenu = new JMenu("Filer")); JMenuItem exitItem = new JMenuItem("Afslut"); exitItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { System.exit(0); } }); fileMenu.add(exitItem);
menu.add(editMenu = new JMenu("Rediger"));
Action action = new StyledEditorKit.BoldAction(); action.putValue(Action.NAME, "Fed"); editMenu.add(action);
action = new StyledEditorKit.ItalicAction(); action.putValue(Action.NAME, "Kursiv"); editMenu.add(action);
action = new StyledEditorKit.UnderlineAction(); action.putValue(Action.NAME, "Understregning"); editMenu.add(action);
Det compiler også og køre ja. men hvor er forbindelsen fra gui'en til den metode du har lavet?? Jeg skal lige have den tilføjet til menu'en såådan at jeg kan teste at metoderne gør det de skal.. :) men skal lige have læst op på hvad sttylecontext så kræver at der skal være med.... opm det bare er en New.. eller hvad det er.. :)
Synes godt om
Slettet bruger
07. august 2003 - 11:40#7
Den er da tilføjet til menuen? De 3 nederste indgange i rediger hedder superscript, subscript og normal. Dem kan du vælge til at se at det har den ønskede effekt. Indrømmet det er ikke pænt, men jeg lavede også bare noget der "virkede".
Okay... kan godt ske jeg ikke så ordentligt efter... kigger lige når jeg kommer hjem.. behøver heller ikke være smukt.. bare noget jeg sidder og pusler med... kan sku altid strammme det lidt op når at det bliver alvorligt. .:)
Hmm.... det virker ikke så fedt igen.... den indsætter mellemrum hver gang man skifter imellem hver slags.... man kan ikke markere et stykke tekst og få det hævet eller sænket i forhold til resten i linien..:/
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.