如何使用LWUIT 1.4为Border设置标题?如何对奇数行和成对表行进行着色?

| 我使用LWUIT 1.4 1)在我的窗体中有一个基于BoxLayout(Y轴)的容器,此容器中添加了两个Label,我想创建一个标题为Border的容器放置在容器中,以便它包围两个标签。我知道要创建边框,但是我不知道如何使用LWUIT 1.4为边框设置标题!那么,如何使用LWUIT 1.4为Border设置标题? 2)在我的窗体中有一个基于DefaultTableModel类的表,该表的getValueAt方法是通过记录存储的枚举实现的,我希望该表的行根据该行的索引进行着色:例如,当该行index为奇数,则其背景色应为白色,如果行索引为pair,则其背景色应为灰色。如何实现呢? 3)为什么TableLayout.Constraint方法不起作用?我想使一个表的两列具有相等的大小,即每列的表总宽度的50%,但是当我运行该应用程序时,当第一列与第二列的数据不相等时,它们的大小不相等足够长了 !那么如何使列大小相等? 真的非常感谢你     
已邀请:
1)行李箱中有一个带标题的边框,但我认为它是在1.4中添加的。 您可以通过重写Container paintBorder方法来绘制类似的内容(注意,您将需要足够的组件填充以使边框正确显示。这是SVN版本的代码,应进行很少的更改(只需将c更改为此即可):
Font f=c.getStyle().getFont();
int titleW=f.stringWidth(borderTitle);
int topPad=c.getStyle().getPadding(Component.TOP);
int topY=y+(topPad-thickness)/2;
if (c.isRTL()) {
    g.fillRect(x+width-TITLE_MARGIN, topY, TITLE_MARGIN , thickness); //top (segment before the title)
    g.fillRect(x, topY, width-(TITLE_MARGIN +titleW+TITLE_SPACE*2), thickness); //top (segment after the title)
    g.drawString(borderTitle, x+width-(TITLE_MARGIN +titleW+TITLE_SPACE), y+(topPad-f.getHeight())/2);
} else {
    g.fillRect(x, topY, TITLE_MARGIN , thickness); //top (segment before the title)
    g.fillRect(x+TITLE_MARGIN +titleW+TITLE_SPACE*2, topY, width-(TITLE_MARGIN +titleW+TITLE_SPACE*2), thickness); //top (segment after the title)
    g.drawString(borderTitle, x+TITLE_MARGIN+TITLE_SPACE, y+(topPad-f.getHeight())/2);
}

g.fillRect(x, y+height-thickness, width, thickness); //bottom
g.fillRect(x, topY, thickness, height); //left
g.fillRect(x+width-thickness, topY, thickness, height); //right
2)派生表并覆盖该方法:
protected Component createCell(Object value, int row, int column, boolean editable)
调用super.createCell()并将返回值的UIID设置为\“ OddRow \”,\“ EvenRow \”。在资源编辑器或主题中将样式设置为您喜欢的任何样式。 3)我不知道这样的问题。如果在当前的SVN上发生这种情况,则应在项目问题跟踪器中提出问题。     
我从您的博客站点下载了最新的资源编辑器,并定义了组件TableCell的背景和边框“选定”版本,但是当我单击最后一个列表单元格时,总是在运行时显示该矩形!我尝试在组件f
ocusGained()
实现的方法中调用
tableName.repaint()
,因为我已将其注册到focuslistener,但矩形并没有消失。 我创建了一个对话框来显示选定的行号,当单击第三个软键时显示对话框时,矩形消失了!也许焦点从表格单元格消失了!每当我开火时,我就会得到与以前相同的行号;因此没有行号错误。因此,我应该编写什么代码,或者应该在编辑器中编辑什么属性,以获得与显示对话框以使矩形消失一样的效果?     

要回复问题请先登录注册