我剛開始研究GWT,希望能夠就如何達到某個結果向專家進行諮詢。GWT ScrollPanel標頭
我需要一個帶有標題的scrollPane,類似於swing的JSCrollPane。對於那些不熟悉的人來說,JScrollPane可以有一個行或一個列標題。現在讓我們把重點放在一個帶有行標題的地方。主要組件是一個Canvas,我可以根據滾動窗格的滾動條位置繪製視圖。
對於行標題,可以用垂直堆疊的組件填充此標題。垂直滾動條滾動垂直組件堆棧以及主要客戶區域。水平滾動條水平滾動主區域,但不滾動保持始終可見的行標題。
據我所知,標準的GWT ScrollPanel不直接支持頭文件。
首先,標準GWT中是否有提供此功能的組件?我查看了Cell組件,這可能適用於列標題,但似乎不適用於行列。某些第三方(可能是開源)庫中是否有這樣的組件?
如果我不得不實施這個,你會建議什麼方法?
我認爲只爲行標題創建一個VerticalPanel,一個Canvas與主要組件的視圖一樣大。我可以在滾動更改時在畫布上繪製內容,但我不確定如何僅製作VerticalPanel顯示(視口)的一部分。
我也考慮過在ScrollPane中只包含垂直面板,有一個單獨的水平滾動條(虛擬)水平滾動畫布,但在這種情況下,垂直滾動條出現在標題和畫布之間,而不是我想要的是。
謝謝!
我試過這段代碼,但它沒有顯示任何內容: 標籤h = new Label(「My header」); //新標題(tb); ScrollPanel sp = new ScrollPanel(); lp.add(h); lp.add(sp); lp.setWidgetLeftWidth(h,0,Unit.PX,36,Unit.PX); lp.setWidgetRightWidth(sp,36,Unit.PX,0,Unit.PX); RootPanel rp = RootPanel.get(「rootContainer」); –
這意味着您的LayoutPanel的高度爲零。正如我所提到的,它必須是一個實現了ProvideResize(即另一個LayoutPanel,VerticalPanel等)的Widget的直接子元素,或者您必須在代碼/ css中設置它的高度。 –
另外,在你的片段中,我沒有看到你將這個小部件添加到你的RootPanel的位置。 –