gpt4 book ai didi

Eclipse SWT 标签未显示在 Composite 中

转载 作者:行者123 更新时间:2023-12-04 05:38:51 25 4
gpt4 key购买 nike

在没有设置界限的情况下,我的标签未按预期显示在下面的代码中。
我在 shell 中创建了一个复合,因为我只希望背景图像出现在这个复合中。

在这种情况下,界限应该是什么?我可以根据标签的文本获得最佳边界吗?

Display display = PlatformUI.createDisplay();
Shell shell = new Shell(display);
shell.setText("Header);

Composite main = new Composite(shell, SWT.NONE);
main.setBounds(10, 5, 775, 505);
InputStream is = getClass().getResourceAsStream("/resources/bg.png");
Image bg = new Image(display, is);
main.setBackgroundImage(bg);
main.setBackgroundMode(SWT.INHERIT_DEFAULT);

Label label = new Label(main, SWT.NONE);
//label.setBounds(0, 0, 400,100); // not showing if commented away
label.setText("Label 1");

最佳答案

这在 Linux(Eclipse 3.6.2,Java 1.6.0.26)上对我有用:

public class StackOverflow
{
public static void main(String[] args)
{
Display display = Display.getDefault();
Shell shell = new Shell(display);
shell.setText("Header");

Composite main = new Composite(shell, SWT.NONE);
main.setLayout(new GridLayout(1, false));
Image bg = new Image(display, "resources/bg.png");
main.setBackgroundImage(bg);
main.setBackgroundMode(SWT.INHERIT_DEFAULT);

Label label = new Label(main, SWT.NONE);
label.setLayoutData(new GridData(GridData.FILL_BOTH));
label.setText("Label 1");

main.pack();
main.setBounds(10, 5, 775, 505);
shell.pack();
shell.open();
while (!shell.isDisposed())
{
if (!display.readAndDispatch())
display.sleep();
}
}
}

关于Eclipse SWT 标签未显示在 Composite 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11556915/

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