1
當我的JScrollPane中有超過50個組件時,每當用戶決定轉到下一頁時,JScrollPane中的前10個組件都被清除。Java JScrollPane在不更改視口的情況下刪除組件
此功能正常工作並且是可取的,但是當組件被移除時,視口/滾動被改變。每次清除組件時,滾動窗格的視圖都會跳回。
我想要的是保持視口在完全相同的位置,同時從JScrollPane中刪除第一個組件。
目前,我有一個解決辦法,但它不是優雅,但它發現用戶上次是,它是波濤洶涌,並跳轉到滾動窗格不看的權利:
if (middlePanel.getComponents().length > 50)
{
Component currentScroll = scrollPane.getViewport().getView();
for (int counter = 0; counter < memeAnchors.size(); counter++)
{
middlePanel.remove(counter);
}
scrollPane.setViewportView(currentScroll);
scrollPane.getVerticalScrollBar().setValue(scrollPane.getVerticalScrollBar().getValue() - 800);
}
是什麼我甚至想做甚麼?
在此先感謝大家,
感謝您的回答,比我希望的複雜一點,但我絕對可以用這個。謝謝你的幫助。 – Cristian
@克里斯蒂安:不客氣。祝你好運。 –