gpt4 book ai didi

java - SWT GridLayout 自动列计数

转载 作者:太空宇宙 更新时间:2023-11-04 07:35:17 25 4
gpt4 key购买 nike

我正在使用 SWT GridLayout 在网格中显示不同的图像,这真是一个奇迹。现在我的问题是,GridLayout 始终具有固定的列数,假设为 5。有没有办法让GridLayout变得灵活,使列数根据父组件的大小增加或减少? (例如,当调整窗口大小时)。

我在 GridLayoutConstructor 或 GridData 中找不到选项。 RowLayout 不能满足我的需求

最佳答案

您可以在运行时更改布局。

当父组件的大小发生变化时,更改其 GridLayoutnumColumns 属性并在父组件上调用 layout(true)

final Shell shell = new Shell();

final GridLayout layout = new GridLayout( 3, true );
shell.setLayout( layout );

shell.addControlListener( new ControlAdapter() {
@Override
public void controlResized( ControlEvent event ) {
int newColumnNumber = 5; // Calculate your new value here.
layout.numColumns = newColumnNumber;
shell.layout( true );
}
} );

关于java - SWT GridLayout 自动列计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16977553/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com