我在GWT中使用了TabLayoutPanel,我希望最後一個標籤顯示在頁面的右側。是否有可能做到這一點?TabLayoutPanel將標籤右對齊
2
A
回答
-1
這是可能的,並且將是非常容易的,如果你創建自己的標籤。只需創建一個標籤形狀的png圖像(這是在頂部圓角)。寫一個css規則。取一個FlextTable並將該CSS應用於每個單元格將成爲您的選項卡,然後將該FlexTable添加到另一個mainTable中。因此,在第一行的mainTable中,將會有tabFlexTable和第二行,無論您想在選擇特定選項卡後顯示什麼內容,都可以在第一行應用水平對齊。這種方式和方式我也用於我的專業項目。
0
短回答 -
我在GWT 2.3和AFAIK上鑽取了源代碼,它比TabBar
和StackLayoutPanel
更容易構建您自己的複合材料,而不是開始對抗此實現。
只是爲了節省您的努力,它也不能輕鬆居中。 對不起,它是這樣的。
這一切的硬編碼...
private static final int BIG_ENOUGH_TO_NOT_WRAP = 16384;
private final FlowPanel tabBar = new FlowPanel();
...
tabBar.getElement().getStyle().setWidth(BIG_ENOUGH_TO_NOT_WRAP, Unit.PX);
3
共同的想法:
- 組標籤容器寬度的預定義的 「16384px」,而不是 「自動」
- 集 「浮動:權利」 的CSS財產到最後一個選項卡
將最後一個選項卡移動到firts位置
public void onModuleLoad() { ..... // init TabLayoutPanel ..... Widget rightTab = tabPanel.getTabWidget(0).getParent(); DOM.setStyleAttribute(rightTab.getElement(), "float", "right"); Widget tabBar = rightTab.getParent(); tabBar.setWidth("auto"); tabPanel.selectTab(1); }
0
爲什麼不是純粹的CSS解決方案?將代碼與設計分開是很好的做法。
.gwt-TabLayoutPanelTabs {
width: auto!important;
}
.gwt-TabLayoutPanelTab {
float: right;
}
請記住,你的標籤會以相反的順序(先加入將右一)
1
如果要對齊所有標籤向右試試這個:
.gwt-TabBar .gwt-TabBarFirst {
width: 100%;
}
.gwt-TabBar .gwt-TabBarRest {
width: 4px;
}
.gwt-TabBar .gwt-TabBarFirst-wrapper {
width: 100%;
}
相關問題
- 1. WinForms:右對齊標籤自動大小
- 2. 選擇標籤的選項右對齊
- 3. 聚合物 - 右對齊紙張標籤
- 4. 對齊一組標籤的右側
- 5. 如何在SemanticUI中將標籤對齊到標題的右側
- 6. 如何讓一些標籤左對齊,其他標籤右對齊? (TabControl在wpf)
- 7. JavaFX多行標籤右對齊換行符對齊
- 8. 將hr標籤和img標籤對齊
- 9. TabLayoutPanel禁用標籤GWT
- 10. 如何將標籤對齊到樣式複選框的右側
- 11. 標籤對齊
- 12. GridBagLayout對齊標籤
- 13. 對齊span標籤
- 14. 標籤左對齊
- 15. 將Eclipse右對齊RCP coolbar
- 16. 右對齊和垂直對齊帶複選框/單選按鈕的標籤CSS
- 17. 想要將時間戳添加到中心將textview與調整標籤對齊到右對齊
- 18. 如何將多個div標籤對齊
- 19. 如何將軸標籤對齊
- 20. 將列表與標籤對齊
- 21. 左右對齊
- 22. 右對齊
- 23. 右對齊流
- 24. VBA右對齊
- 25. NSNumberFormatter右對齊
- 26. 在div標籤內右對齊菜單控件
- 27. 以編程方式創建的標籤不會右對齊
- 28. 帶多邊形的右對齊參考標籤
- 29. 如何來包裝標籤,並給他們留下右對齊
- 30. 正確右對齊一個切換及其標籤
謝謝。這對我工作.. :)。但我的主頁中有兩個標籤面板。我希望一個應該對齊,但第二個應該對齊默認(左)。這是可能的,因爲gwt對每個組件都有自己的CSS元素? – 2015-05-30 03:18:15