Java 如何将文本字段居中(代号1)?

Java 如何将文本字段居中(代号1)?,java,textfield,codenameone,Java,Textfield,Codenameone,我正在尝试在Codename One中的textfield中设置文本对齐方式。 我已经创建了一个样式来设置对齐方式,但它不起作用 我可以将对齐设置为左右对齐,但不能设置为居中对齐。 我想知道如何将文本(值)置于文本字段的中心 有人知道怎么做吗 提前谢谢。我认为您甚至不需要触摸样式,只需使用setAlignment方法: TextArea ta = new TextArea() ; ta.setAlignment(TextArea.CENTER); 检查一下,它会解决你的问题 Form fo

我正在尝试在Codename One中的textfield中设置文本对齐方式。 我已经创建了一个样式来设置对齐方式,但它不起作用

我可以将对齐设置为左右对齐,但不能设置为居中对齐。 我想知道如何将文本(值)置于文本字段的中心

有人知道怎么做吗


提前谢谢。

我认为您甚至不需要触摸样式,只需使用
setAlignment
方法:

TextArea ta = new TextArea() ;
ta.setAlignment(TextArea.CENTER);

检查一下,它会解决你的问题

Form   form = new Form(new BoxLayout(BoxLayout.Y_AXIS));
TextField textField = new TextField();
form.addComponent(textField);
textField.setAlignment(TextArea.CENTER);
form.show();

如果使用Textarea而不是Textfield,则居中对齐有效

TextArea textAreaInput = new TextArea();
然后:

textAreaInput.getAllStyles().setAlignment(TextArea.CENTER);

但是,正如谢伊指出的,在编辑过程中,文本会向左对齐

你不是将TA设置为父组件的中间,而不是将值与中心对齐吗?这只是一个问题,我发布了类似的内容,想知道是否有差异您好,谢谢您的回答。我尝试了你的解决方案(代码),不幸的是它没有工作。我正在使用代号为One的NetBeans插件,在尝试了您的代码后,我遇到了一个例外:@Skyblue您更新了项目属性下的库了吗?顺便说一句:如果你想通知某人,你需要在你的评论中添加一个@Name。我建议使用
ta.getAllStyles().setAlignment(Component.CENTER)
注意
ta.setAlignment
是不推荐的。但是,如果该字段是可编辑的,则在编辑期间可能不会保持其中心对齐。