簡體   English   中英

調整/添加組件大小時,滾動窗格滾動條會顯示整個Jframe

[英]Scrollpane scrollbars to entire Jframe when resizing/adding components

我只使用擺動組件和布局(不為null)編輯項目,所以現在我不僅要在pictrure處向所有幀添加滾動條,還需要調整和移動滾動條的大小並在向下滾動時顯示組件。框架有很多組件,用戶可以添加圖片,管理員可以添加標簽或其他組件,因此在調整框架大小時我不知道要重畫什么。例如,重畫所有我看不到的東西。我粘貼了一些代碼來告訴我在哪里添加滾動窗格或滾動條

public class Test extends JFrame {

private JPanel contentPane;

/**
 * Launch the application.
 */
public static void main(String[] args) {
    EventQueue.invokeLater(new Runnable() {
        public void run() {
            try {
                Test frame = new Test();
                frame.setVisible(true);

            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    });
}

/**
 * Create the frame.
 */
public Test() {
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setBounds(100, 100, 450, 300);
    contentPane = new JPanel();
    contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
    setContentPane(contentPane);
    contentPane.setLayout(new SpringLayout());

            //Suppose that here we have many jlabels,jbuttons,jtextfields and other
}

 }

我再舉一些其他例子,問題是我沒有重畫或畫圈的圖片,而是用戶添加的東西。它是一個在線應用程序。

我不需要一個帶有滾動條示例的小程序,但是可以幫助我的代碼在整個框架中添加它並動態地工作。

是的,您確實需要一個簡單的例子。 您應該從一些可行的方法開始,然后對其進行修改以滿足您的需求。 您的代碼有很多問題:

  1. 不要混合使用AWT和Swing組件。
  2. 不要使用空布局。
  3. 不要隨意設置組件的大小。 每個Swing組件都設計為具有應顯示的首選大小。

閱讀Swing tutorial 您會發現很多示例,這些示例將向您展示使用Swing組件並在EDT上構建初始GUI的正確方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM