try { // Get the text pane's document JTextPane textPane = new JTextPane(); StyledDocument doc = (StyledDocument)textPane.getDocument(); // The component must first be wrapped in a style Style style = doc.addStyle("StyleName", null); StyleConstants.setComponent(style, new JButton("OK")); // Insert the component at the end of the text doc.insertString(doc.getLength(), "ignored text", style); } catch (BadLocationException e) { }