Java Eclipse Scout的GUI中未显示的StandardOutline表
我正在学习如何使用EclipseScout,并从上的教程开始 我很自豪地完成了第一个hello world教程,但在尝试完成该教程时遇到了问题 在第步之前,一切都进展顺利,当时我需要重新启动服务器和任何GUI客户机,以查看我刚刚创建的大纲中的表的格式不好。问题是:没有一个客户端向我显示创建的表,它们都是空的 我在每个新添加的列(主键列除外)中都勾选了可见字段,但我不明白为什么没有显示表。我甚至试图继续学习教程,并根据需要将列宽设置为200,但仍然没有表格。我在下面粘贴了companytable类页面的代码。还提供了Scout Explorer的屏幕截图。我真的刚开始使用Eclipse Scout,非常感谢您的帮助和提示 谢谢, 伊萨Java Eclipse Scout的GUI中未显示的StandardOutline表,java,eclipse,eclipse-scout,Java,Eclipse,Eclipse Scout,我正在学习如何使用EclipseScout,并从上的教程开始 我很自豪地完成了第一个hello world教程,但在尝试完成该教程时遇到了问题 在第步之前,一切都进展顺利,当时我需要重新启动服务器和任何GUI客户机,以查看我刚刚创建的大纲中的表的格式不好。问题是:没有一个客户端向我显示创建的表,它们都是空的 我在每个新添加的列(主键列除外)中都勾选了可见字段,但我不明白为什么没有显示表。我甚至试图继续学习教程,并根据需要将列宽设置为200,但仍然没有表格。我在下面粘贴了companytabl
/**
*
*/
包org.eclipsescout.demo.minicrm.client;
导入org.eclipse.scout.commons.annotations.Order;
导入org.eclipse.scout.commons.annotations.PageData;
导入org.eclipse.scout.rt.client.ui.basic.table.columns.AbstractLongColumn;
导入org.eclipse.scout.rt.client.ui.basic.table.columns.AbstractStringColumn;
导入org.eclipse.scout.rt.client.ui.desktop.outline.pages.AbstractPageWithTable;
导入org.eclipse.scout.rt.extension.client.ui.basic.table.AbstractExtensibleTable;
导入org.eclipse.scout.rt.shared.text;
导入org.eclipsescout.demo.minicrm.client.CompanyTablePage.Table;
导入org.eclipsescout.demo.minicrm.shared.CompanyTablePageData;
导入org.eclipsescout.demo.minicrm.client.CompanyTablePage.Table.NameColumn;
/**
*@作者伊萨
*/
@PageData(CompanyTablePageData.class)
公共类CompanyTablePage扩展了AbstractPageWithTable{
@凌驾
受保护的字符串getConfiguredTitle(){
返回文本。获取(“公司”);
}
@订单(10.0)
公共类表扩展了AbstractExtensibleTable{
/**
*@返回ShortName列
*/
公共ShortNameColumn getShortNameColumn(){
返回getColumnSet().getColumnByClass(ShortNameColumn.class);
}
/**
*@返回名称列
*/
公共名称列getNameColumn(){
返回getColumnSet().getColumnByClass(NameColumn.class);
}
/**
*@返回公司专栏
*/
public CompanyNrColumn getCompanyNrColumn(){
返回getColumnSet().getColumnByClass(CompanyNrColumn.class);
}
@订单(10.0)
公共类companyRColumn扩展了AbstractLongColumn{
@凌驾
受保护的布尔值getConfiguredDisplayable(){
返回false;
}
@凌驾
受保护的布尔值getConfiguredPrimaryKey(){
返回true;
}
@凌驾
受保护的布尔getConfiguredVisible(){
返回false;
}
}
@订单(20.0)
公共类ShortNameColumn扩展了AbstractStringColumn{
@凌驾
受保护的字符串getConfiguredHeaderText(){
返回文本。获取(“短名称”);
}
@凌驾
受保护的整型getConfiguredWidth(){
返回200;
}
}
@订单(30.0)
公共类NameColumn扩展了AbstractStringColumn{
@凌驾
受保护的字符串getConfiguredHeaderText(){
返回文本。获取(“名称”);
}
@凌驾
受保护的整型getConfiguredWidth(){
返回200;
}
}
}
}
在我看来,您在创建Scout项目时选择了错误的模板 您确定要选择“基于大纲的应用程序”吗 此处描述了不同的类型: 主要区别在于scout应用程序的
桌面#execOpened()
。您需要手动更改此实现
根据选择的模板,SDK会在项目创建过程中添加一些默认元素(表单、大纲…)。可以在项目创建后添加这些元素 嘿,马提亚,谢谢你的回答。可能是我在教程中忽略了这一步。我会尝试创建一个新的项目,如果你的答案正确,我会打勾。但我有没有办法在不创建新项目的情况下纠正这个问题?嗨,伊莎,是的,当然有可能。但是,由于您处于开发的早期,因此需要花费比重新创建项目更多的时间。希望此帮助我同意Matthias的意见最简单的方法是在创建模板时选择适当的模板。但是没有黑魔法,即使我们有3个模板,这只是一个问题,你想手工做什么,你想生成什么。我编辑了答案以添加此信息
/**
*
*/
package org.eclipsescout.demo.minicrm.client;
import org.eclipse.scout.commons.annotations.Order;
import org.eclipse.scout.commons.annotations.PageData;
import org.eclipse.scout.rt.client.ui.basic.table.columns.AbstractLongColumn;
import org.eclipse.scout.rt.client.ui.basic.table.columns.AbstractStringColumn;
import org.eclipse.scout.rt.client.ui.desktop.outline.pages.AbstractPageWithTable;
import org.eclipse.scout.rt.extension.client.ui.basic.table.AbstractExtensibleTable;
import org.eclipse.scout.rt.shared.TEXTS;
import org.eclipsescout.demo.minicrm.client.CompanyTablePage.Table;
import org.eclipsescout.demo.minicrm.shared.CompanyTablePageData;
import org.eclipsescout.demo.minicrm.client.CompanyTablePage.Table.NameColumn;
/**
* @author Isa
*/
@PageData(CompanyTablePageData.class)
public class CompanyTablePage extends AbstractPageWithTable<Table> {
@Override
protected String getConfiguredTitle() {
return TEXTS.get("Company");
}
@Order(10.0)
public class Table extends AbstractExtensibleTable {
/**
* @return the ShortNameColumn
*/
public ShortNameColumn getShortNameColumn() {
return getColumnSet().getColumnByClass(ShortNameColumn.class);
}
/**
* @return the NameColumn
*/
public NameColumn getNameColumn() {
return getColumnSet().getColumnByClass(NameColumn.class);
}
/**
* @return the CompanyNrColumn
*/
public CompanyNrColumn getCompanyNrColumn() {
return getColumnSet().getColumnByClass(CompanyNrColumn.class);
}
@Order(10.0)
public class CompanyNrColumn extends AbstractLongColumn {
@Override
protected boolean getConfiguredDisplayable() {
return false;
}
@Override
protected boolean getConfiguredPrimaryKey() {
return true;
}
@Override
protected boolean getConfiguredVisible() {
return false;
}
}
@Order(20.0)
public class ShortNameColumn extends AbstractStringColumn {
@Override
protected String getConfiguredHeaderText() {
return TEXTS.get("ShortName");
}
@Override
protected int getConfiguredWidth() {
return 200;
}
}
@Order(30.0)
public class NameColumn extends AbstractStringColumn {
@Override
protected String getConfiguredHeaderText() {
return TEXTS.get("Name");
}
@Override
protected int getConfiguredWidth() {
return 200;
}
}
}
}