标签: jscrollpane

删除jscrollpane中的垂直滚动条?

是否可以删除JScrollPane中的垂直滚动条?

java jscrollpane

1
推荐指数
1
解决办法
2798
查看次数

如何将JScrollPane调整为其包含的JTree

我有一个摆动尺寸问题:

我有一个JTree包含在一个JScrollPane(它包含在一个自定义组件中,它从swingx扩展JXPanel,但我认为这与这个问题无关).

无论树有多少行,滚动窗格总是更大(树是dinamic但没有设计成有很多行)但我想要的是JScrollPane调整到树的初始高度,然后显示垂直滚动当某些节点被扩展时.

我试过没有设置任何大小,设置树preferred size to null和设置滚动窗格preferred size to null,但没有任何变化.不想手动设置尺寸......有没有办法做到这一点?

谢谢

java swing jtree jscrollpane

1
推荐指数
1
解决办法
6828
查看次数

如何在JScrollPane中获取组件

我在JScrollPane中有一个JTable; 我如何获得JTable?

谢谢

java user-interface swing jtable jscrollpane

1
推荐指数
1
解决办法
7509
查看次数

Java JScrollPane更新映像

我正在制作一个具有滚动图像的程序,如果按下按钮,我无法弄清楚如何更新图像(例如:向图像添加绿色椭圆.)它已经绘制了将图像放入JScrollPane并可以滚动,但是当您单击按钮时它不会刷新图像.(代码中的更多细节)这是代码:

public class PegMaster extends JPanel implements ActionListener {

    //Note: not complete code
    public PegBox[] pegbox = new PegBox[9];

    public static Dimension size = new Dimension(520, 500);

    public BufferedImage canvas;
    public Graphics2D g2d;
    public JScrollPane scroller;
    JPanel panel;
    private Canvas window;

    JScrollPane pictureScrollPane;

    public PegMaster() {
        JButton button = new JButton("test");
        button.addActionListener(this);
        add(button);

        canvas = new BufferedImage((int)size.getWidth()-30, 75 * GUESSES, BufferedImage.TYPE_INT_RGB);
        g2d = canvas.createGraphics();
        for(int i = 0;i<=pegbox.length-1;i++) {
           pegbox[i] = new PegBox(i, g2d);
        }
        window = new Canvas(new ImageIcon(toImage(canvas)), …
Run Code Online (Sandbox Code Playgroud)

java swing image paint jscrollpane

1
推荐指数
1
解决办法
1984
查看次数

JScrollPane没有在JList上工作

码:

list1items = new DefaultListModel();
list1items.addElement("-");
list1 = new JList(list1items);
list1.setSelectionMode (ListSelectionModel.SINGLE_SELECTION);
list1.setBounds(0,0, 100,100);
JScrollPane list1scr = new JScrollPane(list1);
list1scr.setPreferredSize(new Dimension(20, 20));
list1.setVisibleRowCount(8);
getContentPane().add (list1scr);
Run Code Online (Sandbox Code Playgroud)

并且没有滚动条出现.当项目太多,它们被隐藏时,我无法接触到它们.怎么解决这个?

java swing jscrollpane jlist

1
推荐指数
2
解决办法
4588
查看次数

文本在JTextArea之外

我正在尝试用Java做一些事情,这要求我在ScrollPane中有一个JTextArea.

以下是我如何定义它们:

private JTextArea longestparagraph = new JTextArea();

....
JScrollPane scrollpanedreapta = new JScrollPane(longestparagraph, 
                        JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, 
                        JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
scrollpanedreapta.setBorder(BorderFactory.createTitledBorder("Cel mai lung paragraf:"));
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是,当文本到达TextArea的右边界时,文本不会在新行上开始,但它会继续.有任何想法如何解决?这是一张让我的陈述更清晰一点的图片.

在此输入图像描述

java swing jscrollpane jtextarea word-wrap

1
推荐指数
1
解决办法
1243
查看次数

即使使用setLineWrap(true)和setWrapStyleWord(true),JTextArea宽度也会随输入延伸

当框架出现JTextArea水平劈开直到达到框架宽度尺寸并且在框架尺寸调整时,JTextArea将再次拉伸以匹配框架的宽度.如果添加了输入JTextArea,它将继续水平增长,而不是将文本包装到新行.

如果没有setLineWrap(true)setWrapStyleWord(true)所述JTextArea将所述框架上呈现正确,但仍伸展JTextArea在第一行上.

我该如何解决这个问题?

public class GridBagExample {

private JFrame frame;
private final JPanel panel;
private JLabel frontText, reverseText;
private JTextField frontTextField;
private final JTextArea reverseTextArea;
private GridBagLayout gridBagLayout;
private GridBagConstraints constraints;
private JButton submit, cancel;

public GridBagExample() {

    frame = new JFrame("Create new flashcard");
    gridBagLayout = new GridBagLayout();
    constraints = new GridBagConstraints();
    panel = new JPanel(gridBagLayout);
    panel.setSize(240,220);

    frontText = new JLabel("Front Text");
    constraints.ipadx = 1;
    constraints.ipady …
Run Code Online (Sandbox Code Playgroud)

java swing jpanel jscrollpane jtextarea

1
推荐指数
1
解决办法
1228
查看次数

如何让JScrollPane填充JPanel的高度

我从Java和Swing开始,所以我有一个非常简单的问题,但我找不到任何(简单)方法来解决它...

我的意思是只有一个列表滚动器占据一个面板的整个高度,仅此而已.这是我已编写的代码,thanx帮助我找到实现目标的方法:

public class TestCode {

public static void main(String[] args) {

    JFrame window = new JFrame("Test");
    window.setSize(300, 300);
    window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JPanel panelUp = new JPanel();
    JPanel panelCenter = new JPanel();
    JPanel panelDown = new JPanel();

    window.add(panelUp, BorderLayout.NORTH);
    window.add(panelCenter, BorderLayout.WEST);
    window.add(panelDown, BorderLayout.SOUTH);

    panelUp.setBackground(new Color(200, 240, 200));
    panelCenter.setBackground(new Color(240, 200, 200));
    panelDown.setBackground(new Color(200, 200, 240));

    Vector v = new Vector();
    v.addElement("Element 1");
    v.addElement("Element 2");
    v.addElement("Element 3");
    v.addElement("Element 4");
    v.addElement("Element 5");
    v.addElement("Element 6");

    JList list = new JList(v);
    JScrollPane listScroller = new JScrollPane(list); …
Run Code Online (Sandbox Code Playgroud)

java swing jpanel jscrollpane jlist

1
推荐指数
1
解决办法
4962
查看次数

如何使用其父JPanel来调整JScrollPane的大小

我的问题类似于这个问题(如何在JScrollPane中获取JScrollPanes以跟随父级调整大小),但这个问题不明确,那里的答案对我没有帮助..

我有这个SSCCE(使用MigLayout):

public static final int pref_height = 500;
public static void main(String[] args) {

    JPanel innerPanel = new JPanel(new MigLayout());
    innerPanel.setBorder(new LineBorder(Color.YELLOW, 5));

    for(int i = 0; i < 15; i++) {
        JTextArea textArea = new JTextArea();
        textArea.setColumns(20);
        textArea.setRows(5);
        textArea.setWrapStyleWord(true);
        textArea.setLineWrap(true);
        JScrollPane jsp = new JScrollPane(textArea);

        innerPanel.add(new JLabel("Notes" + i));
        innerPanel.add(jsp, "span, grow");
    }
    JScrollPane jsp = new JScrollPane(innerPanel) {
        @Override
        public Dimension getPreferredSize() {
            setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
            Dimension dim = new Dimension(super.getPreferredSize().width + getVerticalScrollBar().getSize().width, pref_height);
            setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); …
Run Code Online (Sandbox Code Playgroud)

java swing jpanel jscrollpane miglayout

1
推荐指数
1
解决办法
2763
查看次数

垂直JScrollPane切断了孩子们的右侧

起初,我们有一个JPanel.由于其环境和背景,其宽度可以变化.它包含JLabels垂直顺序的一些组件(例如,为简单起见).这些组件的某些内容宽度太大而无法显示:

使用JPanel溢出

这很有效,直到我们有很多项目.因此,我们将面板放入JScrollPane带有HORIZONTAL_SCROLLBAR_NEVER标志的面板中.这是我的预期结果:

JScrollPane的预期结果

但事实上其他事情发生了.不强制使用长文本的第二个标签的大小,并且面板在视口之外生长:

实际上发生了

什么是最简单的正确解决方案?

评论

  • 实际上,对于各种各样的组件,这可能会更复杂,因此使用a JList不是一个合适的解决方案.
  • 我使用默认设置的默认组件.我想找到一个具有最少显式设置的解决方案.

java swing jscrollpane

1
推荐指数
1
解决办法
210
查看次数