- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
目前,我在使用 Vaadin Table 时遇到了一个非常奇怪的问题。如果我在表中使用 AbsoluteLayout 数据不会显示,但如果我使用即 HorizontalLayout,数据会完美显示。这有效:
import com.vaadin.annotations.AutoGenerated;
import com.vaadin.ui.CustomComponent;
import com.vaadin.ui.HorizontalLayout;
import com.vaadin.ui.Table;
public class MyComposite extends CustomComponent {
@AutoGenerated
private HorizontalLayout mainLayout;
@AutoGenerated
private Table table;
public MyComposite() {
buildMainLayout();
setCompositionRoot(mainLayout);
// TODO add user code here
table.addContainerProperty("First Name", String.class, null);
table.addContainerProperty("Last Name", String.class, null);
table.addContainerProperty("Year", Integer.class, null);
table.addItem(new Object[] { "Nicolaus", "Copernicus",
new Integer(1473) }, new Integer(1));
table.addItem(new Object[] { "Tycho", "Brahe", new Integer(1546) },
new Integer(2));
}
@AutoGenerated
private HorizontalLayout buildMainLayout() {
// common part: create layout
mainLayout = new HorizontalLayout();
mainLayout.setStyleName("blue");
mainLayout.setImmediate(false);
mainLayout.setWidth("100%");
mainLayout.setHeight("100%");
mainLayout.setMargin(false);
// top-level component properties
setWidth("100.0%");
setHeight("100.0%");
// table
table = new Table();
table.setImmediate(false);
table.setWidth("100.0%");
table.setHeight("100.0%");
mainLayout.addComponent(table);
return mainLayout;
}
}
但这不是:
import com.vaadin.annotations.AutoGenerated;
import com.vaadin.ui.AbsoluteLayout;
import com.vaadin.ui.CustomComponent;
import com.vaadin.ui.Table;
public class MyComposite extends CustomComponent {
@AutoGenerated
private AbsoluteLayout mainLayout;
@AutoGenerated
private Table table;
public MyComposite() {
buildMainLayout();
setCompositionRoot(mainLayout);
// TODO add user code here
table.addContainerProperty("First Name", String.class, null);
table.addContainerProperty("Last Name", String.class, null);
table.addContainerProperty("Year", Integer.class, null);
table.addItem(new Object[] { "Nicolaus", "Copernicus",
new Integer(1473) }, new Integer(1));
table.addItem(new Object[] { "Tycho", "Brahe", new Integer(1546) },
new Integer(2));
}
@AutoGenerated
private AbsoluteLayout buildMainLayout() {
// common part: create layout
mainLayout = new AbsoluteLayout();
mainLayout.setStyleName("blue");
mainLayout.setImmediate(false);
mainLayout.setWidth("100%");
mainLayout.setHeight("100%");
// top-level component properties
setWidth("100.0%");
setHeight("100.0%");
// table
table = new Table();
table.setImmediate(false);
table.setWidth("100.0%");
table.setHeight("100.0%");
mainLayout.addComponent(table);
return mainLayout;
}
}
两种情况下都会显示列的名称。有人能告诉我为什么会这样吗?提前致谢。
最佳答案
我能够重现您的问题。似乎 Vaadin 的家伙在这里描述了原因: Vaadin book
引用:
A layout that contains components with percentual size must have a defined size!
If a layout has undefined size and a contained component has, say, 100% size, the component will try to fill the space given by the layout, while the layout will shrink to fit the space taken by the component, which is a paradox. This requirement holds for height and width separately. The debug mode allows detecting such invalid cases; see Section 11.3.5, “Inspecting Component Hierarchy”
对于 AbsoluteLayout,到目前为止我发现的唯一解决方法是将表格尺寸设置为一些固定值。
关于java - Vaadin - 如果我使用 AbsoluteLayout,则不会显示表数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23082371/
使用 AbsoluteLayout 的 JFrame 边缘是否可以有一些额外的空间?当我将一个按钮作为 JFrame 最下方的组件时,它会直接定位在 JFrame 窗口的底部边缘上,而且看起来很糟糕。
问题“AbsoluteLayout 的有用替代品是什么?”似乎是一个经常被问到但从未真正回答过的问题。我的情况如下: 我想放置圆圈(为了简单起见,我使用 RadioButtons 进行测试),以便圆圈
我在 Android 6.0 Marshmellow 上的 Xamarin Forms 中遇到绝对布局问题 当设置 View 以填充整个屏幕时,屏幕底部会留下 1px 的间隙。 奇怪的是,如果您将屏幕
为什么声明 android:id="@+id/" 总是在我想运行我的应用程序时出现?有没有办法删除它?谢谢 错误 Error:(16, 21) Resource id cannot be an e
我正在尝试恢复我的旧项目。我想为此使用 maven 并且我想添加 AbsoluteLayout 依赖项。我是 Maven 的新手,所以我不知道出了什么问题。我发现这应该有效: org.netbean
我正在尝试用 JAVA 为银行应用程序制作 GUI。如果我在 Eclipse 中使用 WindowBuilder,那么为我的框架使用绝对布局很容易创建任何东西,但问题是当我调整框架大小时。所以这就
我正在尝试编写一个日历应用程序,我计划有一个网格(周 View ),它可能是一个 TableLayout 并且直接在上面我将必须绝对定位事件网格。 但 AbsoluteLayout 已被弃用。我应该改
slider 是这样开始的。 然后我想对其进行动画处理,使其向上并变宽一点,因此我使用了以下代码片段: await one.LayoutTo(new Rectangle(0.5, 0.1, 0.8,
我有这个 .XAML 页面,但 Scroll 不起作用当我删除 AbsoluteLayout 并采用 stacklayout 时,它工作正常。
我有以下布局: 还有一个简短的代码: public class LayoutTest extends Activity {
我在一台机器上使用 NetBeans 使用 AbsoluteLayout 制作了一个 Java 应用程序,然后将项目数据文件移动到另一台机器,在那里我收到了一些库(包括 AbsoluteLayout
我有一个 Xamarin 项目。我为 IOS、Android 和 UWP 开发。在我的应用程序中,我有 UI 元素的手动布局逻辑。在 IOS 中,我可以使用 frame 属性来设置 View 的渲染位
我看到帖子说 FrameLayout 是替代方案,我应该使用边距来定位东西(这让我觉得非常违反直觉,但是好吧......如果它有效,我会接受它)。但是,我无法让它工作,所以,我正在寻求帮助。 这是我的
目前,我在使用 Vaadin Table 时遇到了一个非常奇怪的问题。如果我在表中使用 AbsoluteLayout 数据不会显示,但如果我使用即 HorizontalLayout,数据会完美显示
我想通过 以编程方式 提供 x,y 坐标来使用 AbsoluteLayout View 显示标签。问题是 ScrollView 覆盖了 AbsoluteLayout 并且无法滚动页面。 最佳答案 不要
如果不推荐使用 AbsoluteLayout,我可以使用什么来代替它? 我已经完成了一个使用 AbsoluteLayout 的应用程序,但它不适用于不同的屏幕分辨率。我使用是因为我可以设置按钮的 X
我正在使用带有 AbsoluteLayout 的 Xamarin.Forms,但是,我不确定如何处理元素的定位。 我正在使用比例值,所以如果我在 AbsoluteLayout.LayoutBounds
我已将我的 Layout 切换为 AbsoluteLayout 并且所有内容都已就位,但是当我运行程序时,我的 JButtons 是不可见的,直到我将鼠标悬停在它们上面。我应该更改什么以使它们始终可见
我正在开发一个 Android 应用程序,其布局包括围绕圆形元素排列的按钮。由于所述元素的角会与其他按钮重叠,因此推荐的布局类型(LinearLayout 等)不是可行的选择。 但是,我想正确地执行此
AbsoluteLayout类已被弃用,但仍然可以用代码编写它并且它可以工作。使用这个类会不会有什么问题?将应用程序部署到手机上后能否正常运行? 谢谢 最佳答案 弃用通常意味着您不鼓励使用它,因为存在
我是一名优秀的程序员,十分优秀!