请任何人帮助仅设置所选文本的颜色...我创建了一个简单的文本编辑器...但是,我无法为所选文本内容设置颜色...一旦,我选择了它将影响整个文本区域而不是选定区域。
请帮助任何人,
提前致谢。
for Example :
现在我只选择 Kumar..所以,将只选择该选定文本的颜色..但是,我的问题是也更改未选择文本的颜色..
怎么解决???????
你用什么组件来显示你的文本?如果是 JTextArea,那就不可能了。您需要一个允许不同样式的组件。例如 JTextPane 中的 StyledDocument。有关详细信息,请参阅如何使用编辑器窗格和文本窗格
你可以试试下一个:
public static void main(String[] args) {
final JFrame frame = new JFrame("Selected Color Example");
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
final JTextArea area = new JTextArea("Text for test...", 5, 10);
frame.add(area, BorderLayout.CENTER);
JButton button = new JButton("Select Color");
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Color color = JColorChooser.showDialog(frame, "Colors",
Color.BLUE);
area.selectAll();
// area.setSelectedTextColor(color); // color of selected text
area.setSelectionColor(color); // background of selected text
area.requestFocusInWindow();
}
});
frame.add(button, BorderLayout.PAGE_END);
frame.pack();
frame.setVisible(true);
}