java - LWUIT 中 TextArea 的滚动问题

标签 java java-me lwuit autoscroll lwuit-textarea

我在 LWUIT 中有一个 TextArea,我在操作时遇到了问题。我有以下两个问题:

  1. 即使我调用了 setIsScrollVisible(true),我似乎也没有 滚动条,当输出低于可见时无法滚动 容器的面积。

  2. 如何让 TextArea 自动滚动到底部 以编程方式?

我初始化 TextArea 的代码如下所示:

myTextArea = new TextArea(20, Display.getInstance().getDisplayWidth());
myTextArea.setEditable(false);
myTextArea.setEnabled(true);
myTextArea.setIsScrollVisible(true);
myTextArea.setGrowByContent(false);
System.out.println(myTextArea.isScrollableY());

isScrollableY() 返回 true。有任何想法吗?有什么我想念的吗? API 中似乎没有任何可见的内容可以让我明确启用或禁用滚动。在此先感谢您对此提供的任何帮助。

最佳答案

文本区域的宽度以列为单位,而不是您在代码中使用的像素。

将滚动条设置为可见不会导致它出现,因为 LWUIT 滚动条总是“根据需要”,这意味着滚动条只会在必要时出现,将此值设置为 false 只会隐藏滚动条,而不考虑必要性。

要让文本区域占据整个宽度,只需将它放在盒子布局 Y 容器/表单中,布局管理器就会在 X 轴上拉伸(stretch)它。

您可以使用 scrollRectToVisible() 将文本区域滚动到底部,或者您可以派生文本区域并使用具有适当值的 setScrollY(int)(请参阅文本区域的源代码,了解如何使用它来滚动文本区域。

关于java - LWUIT 中 TextArea 的滚动问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7651977/

相关文章:

java - ENUM 和单选按钮 Java

java - LWUIT HtmlComponent 渲染本地镜像

java-me - LWUIT 中的日期字段?

java - OpenGL ES 渲染错误

java - 集合不能包含重复项。但确实如此

optimization - 针对较小的 .cod (.jar) 文件进行优化

android - 如何解决 lwuit 中的 'Storage not Initialized' 错误?

java - 如何在 Java ME 中使用 .dll

java-me - J2me中如何处理网络线程调用并等待进度?

java - 移动 JButton