首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在swing应用程序中使用多种语言

在swing应用程序中使用多种语言
EN

Stack Overflow用户
提问于 2015-07-14 11:36:17
回答 2查看 1.3K关注 0票数 9

我们可以在swing应用程序中使用几种字体样式,并且可以为不同的swing文本字段分配不同的字体样式。但是,在java应用程序中是否有任何方法可以配置一个JTextField来支持多语言。例如,输入是地址。

12B“其他语言的街道名称”

代码语言:javascript
运行
复制
JTextField field = new JTextField("example",30);
Font font = new Font("Courier", Font.BOLD,12);
field.setFont(font);

我们如何才能做到这一点?是否有任何字体支持双字体样式(英语+法语)。

第一个应答后的更新

还需要将输入的文本发送到数据库中,并以相同的格式检索回来。因此,我认为不可能在字体之间动态切换。

更新2

如果我们考虑Microsoft,我们可以在一个页面中使用多个字体。因此,应该有一个算法,以保存打印字母与各自的字体。如何在不为不同的语言输入生成两个文本字段的情况下,在swing中实现这种行为。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-14 14:07:27

如果将组件更改为JTextPane,则可以通过使用HTML标记混合字体。下面的代码将创建一个包含文本"Hello“的字段,字体为"Hello”的字体为“New”,“world”的为“Courier”:

代码语言:javascript
运行
复制
JTextPane field = new JTextPane();
field.setContentType("text/html");
field.setText("<html><font face=\"Times New Roman\">Hello</font> <font face=\"Courier\">world!</font></html>");

下面是一个可运行的示例:

代码语言:javascript
运行
复制
public static void main(String[] args) throws InterruptedException {
    MultiFontField text = new MultiFontField();
    JFrame frame = new JFrame();

    text.appendText("Hello ", "Times New Roman").appendText("world!", "Courier").finaliseText();

    frame.add(text);
    frame.setSize(200, 50);     
    frame.setVisible(true);
}

下面是MultiFontField类:

代码语言:javascript
运行
复制
public class MultiFontField extends JTextPane {

    private StringBuilder content;

    public MultiFontField() {
        super();
        this.content = new StringBuilder("<html>");
        this.setContentType("text/html");
    }

    public MultiFontField appendText(String text, String font) {
        content.append("<font face=\"").append(font).append("\">").append(text).append("</font>");
        return this;
    }

    public void finaliseText() {
        this.setText(content.append("</html>").toString());
    }
}
票数 5
EN

Stack Overflow用户

发布于 2015-07-14 11:52:44

您必须根据需要设置文本字段的区域设置。您可以检查这个link中提供的答案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31405487

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档