Java Swing-创建一个函数,将元素添加到JScrollPanel
我想创建一个函数,以便在Java Swing-创建一个函数,将元素添加到JScrollPanel,java,swing,netbeans,jlabel,Java,Swing,Netbeans,Jlabel,我想创建一个函数,以便在JScrollPanel中调用addJLabel等。我不确定NetBeans中的命令是什么 我尝试使用JScrollPanel->事件->容器->组件添加来创建下面的代码。但是,当我向该函数添加代码时,没有显示任何内容 private void initComponents() { scrollPanel = new javax.swing.JScrollPane(); scrollPanel.addContainerList
JScrollPanel
中调用addJLabel
等。我不确定NetBeans中的命令是什么
我尝试使用JScrollPanel
->事件->容器->组件添加来创建下面的代码。但是,当我向该函数添加代码时,没有显示任何内容
private void initComponents() {
scrollPanel = new javax.swing.JScrollPane();
scrollPanel.addContainerListener(new java.awt.event.ContainerAdapter() {
public void componentAdded(java.awt.event.ContainerEvent evt) {
scrollPanelComponentAdded(evt);
}
}
private void scrollPanelComponentAdded(java.awt.event.ContainerEvent evt) {
System.out.println("main");
}
任何帮助都会很好,谢谢。我不使用Netbeans,我也不太清楚您到底想做什么,但是向滚动窗格添加组件的正常情况是添加一个面板作为滚动窗格的“视口”。滚动窗格就像进入该面板的窗口。如果面板太大,无法装入滚动窗格,则会出现滚动条
这里有一个片段来说明我的意思。这可能就是您在initComponents
方法中寻找的:
JPanel panel = new JPanel();
panel.add( ... ); // Add whatever components to the panel
scrollPanel = new JScrollPane();
scrollPanel.setViewportView(panel);
只有在实际添加组件或从容器中删除组件时,才会调用ContainerListener
。在上面的代码中,没有其他组件被添加到滚动窗格中。我想将其添加到函数中,而不是我的initComponents代码中。好的,我想澄清一下:您想在发生“某些事情”时将一些组件添加到函数中的滚动窗格中吗?什么是“某物”?从上面的代码可以看出,您希望响应滚动窗格中组件的更改。