我想向表單中添加一些組件,例如:button,label等。 而我想設置他們的寬度和高度,但我沒有找到這樣的屬性。 有沒有辦法做到這一點?如何更改代碼中的組件大小(寬度和高度)
編輯:
這裏是我在Main.java代碼由組件上調用setSize(width, height)
文件
currentForm = new Form();
currentForm.setLayout(new LayeredLayout());
currentForm.applyRTL(true);
Container mapContainer = new Container(new LayeredLayout());
Container controlsContainer = new Container(new BorderLayout());
controlsContainer.setRTL(true);
currentForm.addComponent(mapContainer);
currentForm.addComponent(controlsContainer);
Container panelTop = new Container(new BoxLayout(BoxLayout.X_AXIS));
Container panelDown = new Container(new FlowLayout(Component.RIGHT));
panelTop.setSize(new Dimension(40, 20));
controlsContainer.addComponent(BorderLayout.NORTH, panelTop);
controlsContainer.addComponent(BorderLayout.SOUTH, panelDown);
Button btnRoute = new Button(res.getImage("icon_routing.png"));
btnRoute.setSize(new Dimension(5, 5));
TextField txtSearch = new TextField();
txtSearch.setRTL(true);
txtSearch.setUIID("searchbox");
txtSearch.setEnabled(true);
// search textfield mode
txtSearch.putClientProperty("searchField", Boolean.TRUE);
txtSearch.setSize(new Dimension(8,10));
Button btnGPSFound = new Button(res.getImage("near_by_menu.png"));
btnGPSFound.setSize(new Dimension(5,5));
panelTop.addComponent(btnRoute);
panelTop.addComponent(txtSearch);
panelTop.addComponent(btnGPSFound);
currentForm.show();
btnRoute.setSize(new Dimension(30, 30));
btnRoute.refreshTheme();
panelTop.refreshTheme(); `
我有一個方案,這不起作用,但根據API,它應該:我有一個邊界佈局,其中包含一個容器與SOUTH約束條目數量可變。只要容器不滾動,設置容器的首選高度就能很好地工作。 'recentSearchContainer = new Container(new BoxLayout(BoxLayout.Y_AXIS)); \t \t recentSearchContainer.setPreferredH((int)的(this.getContentPane()的getHeight()* 0.1F)。);' 一旦設定容器滾動,優選的高度將被忽略。有沒有辦法解決這個問題? – Lequi
可滾動容器有自己的尺寸邏輯,我建議用適當的描述和最終目標的截圖來提出問題 –