gpt4 book ai didi

java - 在代号一中使用选项卡时如何修复容器大小?

转载 作者:行者123 更新时间:2023-11-30 07:38:07 24 4
gpt4 key购买 nike

我正在使用选项卡类并构建三个选项卡,我添加了带有网格布局的容器,并在该容器内添加了一些按钮。我的问题是,当我在选项卡之间导航时,容器的大小会自动增加。如何将容器大小设置为默认屏幕大小?

这是代码

Tabs tabs = new Tabs();
tabs.setChangeTabContainerStyleOnFocus(true);
tabs.setSwipeActivated(true);
tabs.setTabTextPosition(RIGHT);
tabs.setChangeTabContainerStyleOnFocus(true);
Container notContainer = new Container(new BorderLayout());
Label tab2a = new Label("Mahesh");
Label tab2b = new Label("Narkar");
notContainer.addComponent(BorderLayout.NORTH, tab2a);
notContainer.addComponent(BorderLayout.CENTER, tab2b);
Container preContainer = new Container(new GridLayout(4,1));
Button templateBtn = new Button("Template");
Button createPreBtn = new Button("Create/Review Prescription");
Button complianceBtn = new Button("Compliance");
preContainer.addComponent(templateBtn);
preContainer.addComponent(createPreBtn);
preContainer.addComponent(complianceBtn);
Container youContainer = new Container(new GridLayout(7, 1));
Button profileBtn = new Button("Profile");
Button statementBtn = new Button("Statement");
Button viewApptBtn = new Button("View Appointment");
Button referBtn = new Button("Refer");
Button helpBtn = new Button("Help");
Button settingBtn = new Button("Setting");
Button contactBtn = new Button("Contact");
youContainer.addComponent(profileBtn);
youContainer.addComponent(statementBtn);
youContainer.addComponent(viewApptBtn);
youContainer.addComponent(referBtn);
youContainer.addComponent(helpBtn);
youContainer.addComponent(settingBtn);
youContainer.addComponent(contactBtn);

tabs.addTab("NOTIFICATION", MainForm.getResources().getImage("notification_icon.png").scaled(Double.valueOf(Display.getInstance().getDisplayWidth() / 15).intValue(), Double.valueOf(Display.getInstance().getDisplayWidth() / 14).intValue()), notContainer);
tabs.addTab("PRESCRIPTION", MainForm.getResources().getImage("notification_icon.png").scaled(Double.valueOf(Display.getInstance().getDisplayWidth() / 15).intValue(), Double.valueOf(Display.getInstance().getDisplayWidth() / 14).intValue()), preContainer);
tabs.addTab("YOU", MainForm.getResources().getImage("notification_icon.png").scaled(Double.valueOf(Display.getInstance().getDisplayWidth() / 15).intValue(), Double.valueOf(Display.getInstance().getDisplayWidth() / 14).intValue()), youContainer);
tabs.setTabSelectedIcon(0, MainForm.getResources().getImage("white_background.png").scaled(Double.valueOf(Display.getInstance().getDisplayWidth() / 15).intValue(), Double.valueOf(Display.getInstance().getDisplayWidth() / 14).intValue()));
tabs.setTabSelectedIcon(1, MainForm.getResources().getImage("white_background.png").scaled(Double.valueOf(Display.getInstance().getDisplayWidth() / 15).intValue(), Double.valueOf(Display.getInstance().getDisplayWidth() / 14).intValue()));
tabs.setTabSelectedIcon(2, MainForm.getResources().getImage("white_background.png").scaled(Double.valueOf(Display.getInstance().getDisplayWidth() / 15).intValue(), Double.valueOf(Display.getInstance().getDisplayWidth() / 14).intValue()));
addComponent(tabs);

当我在选项卡之间导航时,结果输出是这是输出屏幕截图...

enter image description here enter image description here

最佳答案

问题是您正在使用的 gridLayout 。为了保持一致性,请更改此行:

Container youContainer = new Container(new GridLayout(7, 1));

至:

Container youContainer = new Container(new BoxLayout(BoxLayout.Y_AXIS));
youContainer.setScrollableY(true);

但是如果您的要求需要您使用GridLayout,请将表单布局设置为BorderLayout并将Tab添加到中心:

setLayout(new BorderLayout());
addComponent(BorderLayout.CENTER, tabs);

然后将您的 youContainer 包装在 BoderLayout 中:

tabs.addTab("YOU", MainForm.getResources().getImage("notification_icon.png").scaled(Double.valueOf(Display.getInstance().getDisplayWidth() / 15).intValue(), Double.valueOf(Display.getInstance().getDisplayWidth() / 14).intValue()), BorderLayout.center(youContainer));

关于java - 在代号一中使用选项卡时如何修复容器大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35078310/

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